[英]Is there any benefit to Thread.sleep() in an infinite loop?
我有一个构造,其中变量会根据打开应用程序的时间而不断更新。
while (playTime < allowedTime) {
endTimeSec = (int) (System.currentTimeMillis() / MILLISECONDS);
playTime = endTimeSec - startTime;
}
此检查始终在与实际应用程序不同的线程上运行。 我的问题是,由于我基本上只关心精确到秒的精度,因此每次循环迭代时使用Thread.sleep(1000)
都会有好处吗?
是的, Thread.sleep(1000);
有一个好处Thread.sleep(1000);
在这种情况下。 这会使您的Thread
休眠一秒钟,因此在此期间它不会消耗CPU资源。
就像您要带孩子长途驾车度假一样。 而不是孩子们问“我们到了吗?” 每微秒一次,他们将每秒询问一次。 这是好多了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.