如何创建死锁
来源:互联网 发布:电视虚拟鼠标软件 编辑:程序博客网 时间:2024/06/05 14:13
class Dea implements Runnable
{
//定义一个标记
private boolean flag;
//初始化
Dea(boolean flag)
{
this.flag = flag;
}
//覆盖Run方法
public void run()
{
//创建同步锁,并互相嵌套
if(flag)
{
synchronized(Lock.lockA)
{
System.out.println("Lock.lockA");
synchronized(Lock.lockB)
{
System.out.println("Lock.lockB");
}
}
}
else
{
synchronized(Lock.lockB)
{
System.out.println("Lock.lockB");
synchronized(Lock.lockA)
{
System.out.println("Lock.lockA");
}
}
}
}
}
//创建锁对象
//加static:原因是可以直接用类名.lock访问
class Lock
{
static ObjectlockA = new Object();
static ObjectlockB = new Object();
}
public class _09死锁创建 {
public static void main(String[]args)
{
Thread t1 = new Thread(new Dea(true));
Thread t2 = new Thread(new Dea(false));
t1.start();
t2.start();
}
}
- 如何创建死锁
- 什么是死锁?如何防止死锁?
- 什么是死锁?如何避免死锁?
- 什么是死锁?如何避免死锁!
- 死锁及如何处理死锁
- 什么是死锁?如何避免死锁?
- 什么是死锁,如何避免死锁?
- 什么是死锁?如何避免死锁?
- 什么是死锁?如何避免死锁?
- 什么是死锁?如何避免死锁?
- 死锁以及如何避免死锁
- 什么是死锁?如何避免死锁?
- 什么是死锁?如何避免死锁?
- 什么是死锁?如何避免死锁?
- 死锁及如何避免死锁
- 如何杀掉死锁
- 一:如何造成死锁?
- 如何预防死锁
- NO_41 Pandigital prime
- Ubuntu 下配置安卓开发环境
- 2013-01-05 14:01 IE下JSON 未定义
- VMware vSphere Client 挂接硬盘
- vmware的使用技巧
- 如何创建死锁
- Crossover 教程, 在Mac上运行Win程序
- 几个fork面试题目的验证
- JavaScript 人脸识别技术
- 【android 适配】android 屏幕适配
- kernel cscope
- 脚印之需求惹祸----数据库设计的有问题吗?
- 12306网站抢票机制攻与防
- jfreechart柱状图设置指定两种颜色