0
以下代码示例中的这行代表什么意思?这是什么无名的功能?
synchronized (_surfaceHolder) {
_panel.onDraw(c);
}
我可以猜出它做了什么,但它叫什么,它是如何工作的?这是一个无名的同步功能吗?
class TutorialThread extends Thread {
private SurfaceHolder _surfaceHolder;
private Panel _panel;
private boolean _run = false;
public TutorialThread(SurfaceHolder surfaceHolder, Panel panel) {
_surfaceHolder = surfaceHolder;
_panel = panel;
}
public void setRunning(boolean run) {
_run = run;
}
@Override
public void run() {
Canvas c;
while (_run) {
c = null;
try {
c = _surfaceHolder.lockCanvas(null);
synchronized (_surfaceHolder) {
_panel.onDraw(c);
}
} finally {
// do this in a finally so that if an exception is thrown
// during the above, we don't leave the Surface in an
// inconsistent state
if (c != null) {
_surfaceHolder.unlockCanvasAndPost(c);
}
}
}
}
谢谢!我不知道它叫什么,所以不能谷歌它:p – 2010-08-24 21:04:16