public class DeadLockDemo { public static void main(String[] args) { new Thread(new Runnable() { @Override public void run() { synchronized ("a"){ System.out.println(Thread.currentThread().getName()+"get lock a"); synchronized ("b"){ System.out.println(Thread.currentThread().getName()+"get lock b"); } System.out.println(Thread.currentThread().getName()+"free lock b"); } System.out.println(Thread.currentThread().getName()+"free lock a"); } }).start(); new Thread(new Runnable() { @Override public void run() { synchronized ("b"){ System.out.println(Thread.currentThread().getName()+"get lock b"); synchronized ("a"){ System.out.println(Thread.currentThread().getName()+"get lock a"); } System.out.println(Thread.currentThread().getName()+"free lock a"); } System.out.println(Thread.currentThread().getName()+"free lock b"); } }).start(); } }
模拟一个死锁
最新推荐文章于 2024-07-28 21:21:15 发布