我在 Android 中使用 Runnable 作为循环。像这样:
Timer timer = new Timer();
timer.schedule(new looper(m_mainView, this),0, Rate);
每“速率”毫秒运行一次。
活套是这样的:
class looper extends TimerTask
{
private ImageView img;
Context c;
public looper(ImageView imgView, Context context)
{
this.img = imgView;
this.c = context;
}
public void run()
{
runOnUiThread(new Runnable() {
@Override
public void run() {
....
我想将代码锁定在里面run()
直到它完成,这样如果在完成之前调用它 - 调用的线程将返回并完成。
我尝试了synchronized(Object)
一种内部方法run()
无效。还尝试了互斥锁,但也没有用。
帮助 :)