📄 synchronize2.java
字号:
class synchronize2
{
public static void main(String args[])
{
Shared shared = new Shared();
CustomThread thread1 = new CustomThread(shared, "one");
CustomThread thread2 = new CustomThread(shared, "two");
CustomThread thread3 = new CustomThread(shared, "three");
CustomThread thread4 = new CustomThread(shared, "four");
try {
thread1.join();
thread2.join();
thread3.join();
thread4.join();
} catch(InterruptedException e) {}
}
}
class CustomThread extends Thread
{
Shared shared;
public CustomThread(Shared shared, String string)
{
super(string);
this.shared = shared;
start();
}
public void run() {
synchronized(shared) {
shared.doWork(Thread.currentThread().getName());
}
}
}
class Shared
{
void doWork(String string)
{
System.out.println("Starting " + string);
try {
Thread.sleep((long) (Math.random() * 500));
} catch (InterruptedException e) {}
System.out.println("Ending " + string);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -