В чем разница между path.reset () и созданием нового? - PullRequest
0 голосов
/ 03 апреля 2020

В Android android .graphics.Path лучше использовать один и тот же экземпляр пути и выполнять path.reset () или просто создавать новый (new Path ()) всякий раз, когда рисуете новую вещь?

Path path = new Path();
path.lineTo(...); // some drawing
path.reset()
path.lineTo(...); // more drawing


Path path = new Path();
path.lineTo(...); // some drawing
path = new Path();
path.lineTo(...); // more drawing

Есть ли различия?

1 Ответ

0 голосов
/ 03 апреля 2020

Выделения дорогие. В коде onDraw сброс предпочтительнее, так как он дешевле (в общем случае вы должны минимизировать вызовы новых в onDraw и все, что оттуда вызывается). Если путь создается вне onDraw или других критических областей производительности, то он имеет меньшее значение, и новый, вероятно, будет более удобочитаемым / поддерживаемым.

...