面试写一个进程死锁
来源:互联网 发布:手机图片裁剪软件 编辑:程序博客网 时间:2024/06/06 04:02
如图所示:一个房间有两扇门A、B,其中每个门都有一把钥匙,如果有一个人在B中想进入A门,并且把B们的钥匙带在了身上,有一个进入了A门也把钥匙戴在了身上,这时候B中的不能进入A,A中的人不能进入B,所以导致了死锁。编写的java程序如下所示。
package threaddead;public class ThreadDead { public static void main(String[] args) { new ThreadDead().begin(); } public void begin() { MyThread mThread = new MyThread(); new Thread(mThread, "wang").start(); new Thread(mThread, "zhang").start(); } class MyThread implements Runnable { private Object k1 = new Object();//第一把锁 private Object k2 = new Object();//第二把锁 private boolean flag = true; @Override public void run() { if (flag) { flag = false; synchronized (k1) { System.out.println(Thread.currentThread().getName() + ":k1"); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } synchronized (k2) { System.out.println(Thread.currentThread().getName() + ":k2"); } } } else { flag = true; synchronized (k2) { System.out.println(Thread.currentThread().getName() + ":k2"); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } synchronized (k1) { System.out.println(Thread.currentThread().getName() + ":k1"); } } } } }}
阅读全文
0 0
- 面试写一个进程死锁
- [面试]进程死锁
- 《Java面试试题》写一个两个线程之间的死锁
- 【面试】请写一个java死锁的例子
- 写一个死锁线程
- java写一个死锁
- 写一个死锁程序
- 自己写一个死锁
- 写一个死锁例子,及解决死锁
- java自己动手写一个死锁
- java写的一个死锁例子
- java写一个死锁的简单例子
- java-写一个死锁的案例
- java中如何写一个死锁例子
- Java写一个简单的死锁程序
- 如何写一个死锁的java程序
- 写一个java死锁的demo
- 写一个生活中常见的死锁
- 面试题 颠倒整数
- hdu 1233 还是畅通工程
- 第2章——算法分析
- Python笔记(二)库
- HDU 1069 Monkey and Banana(dp)
- 面试写一个进程死锁
- 2017暑期实习生面试--百度,freewheel
- [系分] 包图
- 1028. 人口普查(20)
- R语言数据结构
- Java设计模式——代理模式(Proxy Pattern)
- 学习淘淘商城第八十二课(SSO工程搭建)
- DOM
- ProgressBar使用步骤