【发布时间】:2012-02-09 21:36:31
【问题描述】:
在 Java 中,哪个被认为更繁重?实现另一个线程并使用等待通知或在当前线程中合并一个 for/while 循环,类似于此>
while(running){
//do stuff
if(skip == 20){
//do more stuff
skip = 0;
}else{
skip++;
}
}
我猜后者不被认为是最佳实践,但我不想最终在一个作用很小的额外线程上花费太多内存。
【问题讨论】:
-
当您尝试以 100% 的利用率烧毁整个内核时,您是否碰巧注意到计算机上的风扇发出的声音非常响亮?除此之外,假设您在某处睡觉,或者这不是无限循环……线程用于并行化工作。如果您不需要它或它不适用于您的问题,则不要使用其他线程。
-
为了您的处理器,请使用新线程。你会像这样让这可怜的东西屈服。
-
@BrianRoach 我会把它作为答案 xD(顺便说一句,它的手机,没有冷却风扇)
-
@BrianRoach android 标签和粉丝通常不会聚在一起 :)
-
噢!错过了。更糟糕的是,你刚刚创造了一个暖手器!
标签: java android multithreading for-loop while-loop