我正在使用ExecutorService来启动多个线程。JAVA线程并发
- 线程A
- 线程B
- 线程C- 和
- 螺纹d
- ....
- .... 螺纹Ñ
所有线程同时开始。 我正在使用ConcurrentHashMap来存储线程D将来可以使用的线程A,线程B,线程C的结果。
现在可能发生线程A仍在执行时线d正在寻找从线程A输出
这适用于这可能是依赖于线d的输出线程C-
这可能是依赖于任何线程的输出像螺纹N-1,或螺纹或螺纹ňN- 4等等
什么可能是最好的办法来处理这种情况,或使线程A等待,直到其他线程准备就绪输出
我假设你想让线程D等待给定的输出线程A正在产生输出。 –
就个人而言,我可能会在'A'作为'A'的一部分完成后启动'D'。但是,如果我没有记错,'未来#GET'被拦截... – MadProgrammer
我MadProgrammer同意,把d睡眠,有一个通知它是这个一个完全有效的方式。 – nevets1219