Рисунок в SurfaceView
уже обрабатывается в отдельном потоке. Вам не нужно порождать новый.
См. API документ об этом:
Одна из целей этого класса - предоставить поверхность, на которой вторичный поток может рендериться на экран. Если вы собираетесь использовать его таким образом, вам необходимо знать о семантике потоков:
- Все методы SurfaceView и SurfaceHolder.Callback будут вызываться из потока, выполняющего окно SurfaceView (обычно это основной поток приложения). Таким образом, они должны правильно синхронизироваться с любым состоянием, которое также затрагивается потоком рисования.
- Вы должны убедиться, что поток чертежа касается только лежащей под ним поверхности, пока она действительна - между SurfaceHolder.Callback.surfaceCreated () и SurfaceHolder.Callback.surfaceDestroyed ().