Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Thread.sleep()是否使UI线程睡眠?_Java_Android_Multithreading - Fatal编程技术网

Java Thread.sleep()是否使UI线程睡眠?

Java Thread.sleep()是否使UI线程睡眠?,java,android,multithreading,Java,Android,Multithreading,这会使当前UI线程休眠吗 try { Thread.sleep(20); onProgressUpdate(i); } catch (InterruptedException e) { e.printStackTrace(); } 仅当从UI线程调用时。那么,语言中的任何静态方法都可以在对象引用而不是类上调用。但这并不会改变功能:Thread.sleep()是一个静态方法,用于将当前线程置于睡眠状态。如果在ui线程上调用sleep,它会阻止ui线程。不要在ui线程上调

这会使当前UI线程休眠吗

try 
{
   Thread.sleep(20);
   onProgressUpdate(i);
} catch (InterruptedException e) {
      e.printStackTrace();
}

仅当从UI线程调用时。

那么,语言中的任何静态方法都可以在对象引用而不是类上调用。但这并不会改变功能:Thread.sleep()是一个静态方法,用于将当前线程置于睡眠状态。

如果在ui线程上调用sleep,它会阻止ui线程。不要在ui线程上调用睡眠。您不应该阻止ui线程

你会得到一个

如果您实现了
线程
句柄线程
,请确保在等待工作线程完成时UI线程没有阻塞,不要调用
线程.wait()
线程.sleep()

另请检查如何避免ANR线程下的主题。睡眠(时间)将使发送此消息的线程在给定的时间间隔内睡眠。因此,如果在UI线程中调用它,它将影响UI线程。就android而言,不建议以任何方式阻碍UI线程,否则将导致ANR应用程序不响应


您可以参考

look here并添加一点,您不应该让ui线程处于休眠状态。您的应用程序将变得无响应,并询问用户是否要终止。