这些事件最近与电话mSurfaceHolder.unlockCanvasAndPost(canvas);
我已经使用DDMS在整个冻结期间记录了下面的活动。如果我偶然遇到我的解决方案,我将非常感谢您对此日志的任何帮助。提前致谢!
04-15 05:14:03.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:04.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:05.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:06.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:07.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:08.123: INFO/ActivityThread(4148): Removing dead content provider: settings
04-15 05:14:08.154: WARN/SharedBufferStack(4148): waitForCondition(DequeueCondition) timed out (identity=355, status=0). CPU may be pegged. trying again.
04-15 05:14:08.186: DEBUG/SensorManager(4148): _sensors_data_poll() failed, we bail out.
使用加速计,触摸和捕获键。所有这一切都是使用canvasThread
从surfaceView
进行绘制。所有这些都与UI线程“分开”。
一直试图从崩溃中获取堆栈跟踪,但是当我将调试器连接到它时,这个糟糕的东西不会对我产生影响;然而它似乎从加速度计获得的数据几乎是一半的速度?知道为什么会这样吗?
[编辑] --- 终于得到了一个堆栈跟踪
Thread [<9> CanvasThread] (Suspended)
**Surface.unlockCanvasAndPost(Canvas) line: not available [native method]**
SurfaceView$3.unlockCanvasAndPost(Canvas) line: 804
CanvasSurfaceView$CanvasThread.run() line: 233
Thread [<8> AsyncQueryWorker] (Suspended)
**Object.wait(long, int) line: not available [native method]**
MessageQueue(Object).wait() line: 288
MessageQueue.next() line: 146
Looper.loop() line: 123
HandlerThread.run() line: 60
Thread [<7> Binder Thread #2] (Suspended)
**NativeStart.run() line: not available [native method]**
Thread [<6> Binder Thread #1] (Suspended)
**NativeStart.run() line: not available [native method]**
Daemon System Thread [<5> Compiler] (Suspended)
NativeStart.run() line: not available [native method]
Daemon System Thread [<3> Signal Catcher] (Suspended)
NativeStart.run() line: not available [native method]
Daemon System Thread [<2> HeapWorker] (Suspended)
NativeStart.run() line: not available [native method]
新信息,在使用DDMS时,我试图在冻结时点击“停止进程”,它会杀死应用程序一秒钟后重新出现并继续毫不犹豫地...... wierd