【发布时间】:2013-05-26 03:23:05
【问题描述】:
我正在检查循环内的某些条件,如果满足该条件,那么我想启动一个新线程。
在我进行更新的线程中,该更新将对下一次迭代的条件产生影响。
我担心线程在下一次迭代之前不会完成(例如更新数据库或调用远程资源),并且在下一次迭代中,条件仍将评估相同,因此在更新之前将有两个或更多线程运行已启动。
我不能有任何计时器/等待或类似的东西。循环必须持续且瞬时地运行。
我正在考虑的一个解决方案是在线程内更新一个标志,并在线程完成之前检查相同的标志。
感谢您的任何反馈或建议。
【问题讨论】:
-
不清楚..您想从下一次迭代中立即使用更改吗?
-
不,我不希望这样做,因为在下一次迭代之前执行某些过程可能需要一些时间,所以不是针对相同的条件。但我不想拖延它,它必须继续下去。
标签: java multithreading