java线程死锁例子
来源:互联网 发布:程序员培训机构合肥 编辑:程序博客网 时间:2024/05/20 02:28
package com.yangtianb.test.Thread;
public class TestDeadLock implements Runnable {
public int flag = 1;
static Object o1 = new Object(),o2 = new Object();
public void run(){
System.out.println("flag=" + flag);
// 当flag==1锁住o1
if (flag == 1) {
synchronized (o1) {
try {
Thread.sleep(500);
} catch (Exception e) {
e.printStackTrace();
}
// 只要锁住o2就完成
synchronized (o2) {
System.out.println("1");
}
}
}
// 如果flag==0锁住o2
if (flag == 0) {
synchronized (o2) {
try {
Thread.sleep(500);
} catch (Exception e) {
e.printStackTrace();
}
// 只要锁住o1就完成
synchronized (o1) {
System.out.println("0");
}
}
}
}
public static void main(String[] args) {
// 实例2个线程类
TestDeadLock td1 = new TestDeadLock();
TestDeadLock td2 = new TestDeadLock();
td1.flag = 1;
td2.flag = 0;
// 开启2个线程
Thread t1 = new Thread(td1);
Thread t2 = new Thread(td2);
t1.start();
t2.start();
}
}
- java线程死锁例子
- java 线程死锁的小例子
- java中的线程死锁的一个例子
- java线程死锁例子及解决方法
- Java线程死锁的简单例子
- Java多线程____线程死锁例子
- java线程死锁例子及解决方法
- 线程死锁例子
- 线程死锁例子
- 一个线程死锁的例子
- 一个线程死锁的例子
- Java死锁例子
- java死锁的例子
- java多线程死锁例子
- java死锁例子详解
- JAVA 死锁例子
- java产生死锁例子
- Java 死锁的例子
- Android 模拟器 获得 root权限(目前发现的最简单的方法)
- matlab自动关闭解决办法
- FixTableHeader
- COBOL动态与静态调用
- JAVA正则表达式匹配
- java线程死锁例子
- jquery学习第三番 四种选择器(其中过滤选择器详细重点)
- struts2 标签
- 如何备份OUTLOOK 2007 邮件帐户设置
- java线程通讯
- phpdesigner 7 注册码 注册机 汉化版(转载)
- LCS && LIS
- 图像高斯平滑滤波分析(转)
- static变量的初始值