-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy pathTicketWindowRunnable.java
More file actions
41 lines (30 loc) · 907 Bytes
/
Copy pathTicketWindowRunnable.java
File metadata and controls
41 lines (30 loc) · 907 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package concurrent.cpt04;
/**
* @author: mayuan
* @desc:
* @date: 2018/07/01
*/
public class TicketWindowRunnable implements Runnable {
private int index = 1;
private final static int MAX = 50;
private final static Object MUTEX = new Object();
@Override
public void run() {
synchronized (MUTEX) {
while (index <= MAX) {
System.out.println(Thread.currentThread() + " 的号码是:" + (index++));
}
}
}
public static void main(String[] args) {
final TicketWindowRunnable task = new TicketWindowRunnable();
Thread t1 = new Thread(task, "1号窗口");
Thread t2 = new Thread(task, "2号窗口");
Thread t3 = new Thread(task, "3号窗口");
Thread t4 = new Thread(task, "4号窗口");
t1.start();
t2.start();
t3.start();
t4.start();
}
}