问题描述
有三个线程:
- 一个线程只可以输出:0,3,6,9…
- 一个线程只可以输出:1,4,7,10…
- 一个线程只可以输出:2,5,8,11…
现在要求调度三个线程,使这些数字按照顺序依次输出,如0,1,2,3,4…
解题思路
- 找规律:很明显是等差数列 (n % 3)
- 线程调度的方法:锁 + notifyAll
代码
class ComputeRunnable implements Runnable {
private static final Object lock = new Object(<