我正在開發Android三星Galaxy TAB 10.1。我正式更新到4.0.4版本後經常會出現錯誤:GetBufferLock超時線程
11-01 17:04:35.382: E/gralloc(11657): GetBufferLock timed out for thread 11657 buffer 0x55 usage 0x33 LockState 1
和設備立即重新啓動。如果我正在調試我自己的應用程序,這個錯誤完全是隨機的。
有什麼建議嗎?
P.S.
我只有一個無限循環的油漆:
public void run() {
Canvas canvas = null;
while (true) {
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
try {
synchronized (lock) {
if (!invalidated)
continue;
}
canvas = mHolder.lockCanvas();
synchronized (mHolder) {
onDraw(canvas);
}
synchronized (lock) {
invalidated = false;
}
} finally {
if (canvas != null) {
mHolder.unlockCanvasAndPost(canvas);
canvas = null;
}
}
synchronized (lock) {
if (painter == null)
break;
}
}
}
你使用自定義ROM或其他Android系統,或從三星常規嗎?另外,當平板電腦崩潰時,你在做什麼? – Guian
我使用的是三星的普通產品。我看到的只有一件事,只會使我的可調試應用程序崩潰。 – neworld
你的意思是它只在運行你的應用程序時崩潰?你在做一些沉重的顯示嗎? – Guian