线程学习(四) 死锁简单实现
来源:互联网 发布:mac lion 下载 编辑:程序博客网 时间:2024/05/17 04:04
//以下程序简单演示形成死锁public class TestDeadLock implements Runnable {public int flg=1;static Object o1=new Object(),o2=new Object();public void run(){System.out.println("flg="+flg);if(flg==1){synchronized(o1){try{Thread.sleep(500);}catch(Exception e){e.printStackTrace();}synchronized(o2){System.out.println("1");}}}else if(flg==0){synchronized(o2){try{Thread.sleep(500);}catch(Exception e){e.printStackTrace();}synchronized(o1){System.out.println("0");}}}}public static void main(String[] args){TestDeadLock td1=new TestDeadLock();TestDeadLock td2=new TestDeadLock();td1.flg=0;td2.flg=1;Thread t1=new Thread(td1);Thread t2=new Thread(td2);t1.start();t2.start();}}
运行结果截图:
0 0
- 线程学习(四) 死锁简单实现
- 线程(四)—死锁
- Java学习笔记之线程(四):线程的死锁现象
- Java 实现线程死锁
- 死锁的简单实现
- 线程学习(二)——线程同步,死锁
- 线程学习笔记(九)-死锁
- JAVA线程(死锁)
- CUDA 学习(四)、线程
- JFinal学习笔记(四) 实现简单的图片上传
- java线程学习(三)----死锁(面试常见)
- Java线程死锁的简单例子
- 【学习记录】简单线程池的实现
- python 学习笔记简单线程池实现
- JAVA实现的一个简单的死锁(附解释)
- 利用银行家算法避免死锁(Java简单实现)
- JAVA实现的一个简单的死锁(附解释)
- JAVA实现的一个简单的死锁(附解释)
- 有关推挽输出、开漏输出、复用开漏输出、复用推挽输出以及上拉输入、下拉输入、浮空输入、模拟输入区别
- 硬盘数据丢失具体恢复教程
- OpenGL 导入obj文件
- ACR10EL
- 数学—杭电1425 sort
- 线程学习(四) 死锁简单实现
- ACR100E
- JAVA数组的复制
- 强制去除xcode的编译警告
- 防止CListCtrl闪烁的几种方法实现
- 比特币之父:中本聪是何许人也?
- ACR110E
- IOS-协议
- 简单哈希-hdoj-1425-sort