可以立即调用Runnable吗?

时间:2016-09-27 08:11:11

标签: android multithreading

是否可以在没有Runnable的情况下致电execute

AsyncTask.execute(new Runnable() {
   @Override
   public void run() {
      //TODO your background code
   }
});

在iOS中,closure可以是executed,或者只是像方法一样调用。在第一种情况下,存在小的延迟,其他代码块可以首先到达循环,在第二种情况下,在调用完成时,代码是Runnable。如何使用Android?

1 个答案:

答案 0 :(得分:2)

Runnable runnable = new Runnable() {...}
runnable.run();

如果你需要能够决定在哪里执行它,具体取决于你当前的线程:UI或非UI,你可以做这样的事情

if (Looper.getMainLooper().isCurrentThread()) { ... } else { ... }

可以在Runnable

找到一些有用的信息