Синхронизировать Android Canvas Surfaceview - PullRequest
1 голос
/ 05 января 2012

Я работаю над андроидной игрой с холстом и заметил, что в момент прорисовки основной игровой формы возникает медленный спайк.Это началось сразу после того, как я начал разбрызгивать synchronized(surfaceHandler) вокруг разных частей как попытку сражаться с одновременной модификацией массива.Я слишком синхронизирован?Каково практическое правило, когда синхронизировать, а когда нет, и когда следует изменять видимые данные?

Также возможно, что спайк вызван чем-то другим?Метод рисования выполняется, пока это происходит, но никакое сенсорное взаимодействие невозможно (большинство, если не все, сенсорный метод синхронизирован).

Совет?

1 Ответ

1 голос
/ 05 января 2012

Я думаю, что пока вы генерируете холст из держателя поверхности в одной области, вам не нужно синхронизировать. Это может или не может быть причиной отставания. Если вы используете SurfaceHandler в нескольких потоках, возможно, вы захотите сжать все ваши рисунки в один поток, или вам нужно будет синхронизировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...