Java Condition 控制多线程有序工作
来源:互联网 发布:2017编程前景 知乎 编辑:程序博客网 时间:2024/05/21 12:36
Condition的作用:
相当与Notify跟Wait,Notify只能唤醒等待队列中的某一个线程,通常是先wait的线程。
But Condition.Notify 可以唤醒指定等待的线程。 举个列子,定义condition1\condition2
如果线程1 使用condition1.await,线程2用condition2.await,线程3使用condition1.notify只能唤醒线程1,而线程2只能继续等待。
所以如果四个线程 t1\t2\t3\t4同时工作,可以使用两个condition,去有序的控制线程间通信(t1\t2-condition1 t3\t4-condition2),互不影响。
贴个例子,如何有序执行A,再执行B,再执行C,再执行A....
阅读全文