首页 > 代码库 > 死锁现象
死锁现象
/*java中同步机制解决了线程安全问题,但是也同时引发死锁现象。死锁现象:死锁现象出现 的根本原因: 1. 存在两个或者两个以上的线程。 2. 存在两个或者两个以上的共享资源。 死锁现象的解决方案: 没有方案。只能尽量避免发生而已。 */class DeadLock extends Thread{ public DeadLock(String name){ super(name); } public void run() { if("张三".equals(Thread.currentThread().getName())){ synchronized ("遥控器") { System.out.println("张三拿到了遥控器,准备 去拿电池!!"); synchronized ("电池") { System.out.println("张三拿到了遥控器与电池了,开着空调爽歪歪的吹着..."); } } }else if("狗娃".equals(Thread.currentThread().getName())){ synchronized ("电池") { System.out.println("狗娃拿到了电池,准备去拿遥控器!!"); synchronized ("遥控器") { System.out.println("狗娃拿到了遥控器与电池了,开着空调爽歪歪的吹着..."); } } } } }public class Demo2 { public static void main(String[] args) { DeadLock thread1 = new DeadLock("张三"); DeadLock thread2 = new DeadLock("狗娃"); //开启线程 thread1.start(); thread2.start(); } }
死锁现象
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。