java多线程死锁问题
2015-07-19 17:22
471 查看
1、什么是死锁
2、写一个死锁
2、写一个死锁
public class Demo10 { /** * 写一个死锁 */ public static void main(String[] args) { // TODO Auto-generated method stub Thread threada = new Thread(new DeadTest(true)); Thread threadb = new Thread(new DeadTest(false)); threada.start(); threadb.start();} } class DeadTest implements Runnable{ boolean flag; DeadTest(boolean flag){ this.flag = flag; } public void run(){ if(flag){ synchronized(Mylock.locka){ System.out.println("if locka"); synchronized(Mylock.lockb){ System.out.println("if lockb"); } } }else{ synchronized(Mylock.lockb){ System.out.println("else lockb"); synchronized(Mylock.locka){ System.out.println("else locka"); } } } } } class Mylock{ static Object locka = new Object(); static Object lockb = new Object(); }
相关文章推荐
- java中序列化与反序列化
- Java内存区域与内存溢出异常
- MyEclipse连接MySQL数据库
- java中io操作1
- Java深入 - Spring 异常处理HandlerExceptionResolver
- 深入理解java垃圾回收机制
- Java中关于json的转义字符解析
- JAVA基础_Java面向对象三大特征
- java int to byte array
- JAVA_SE基础——19.数组的定义
- JAVA接口笔记
- spring aop学习笔记
- 02_java关键字、表识符、注释、进制转换、补码反码、数据类型转换
- java基础知识—Java中的反射机制
- Java Exception和Error的区别
- Java实训项目--影碟管理软件
- Java week1
- 【java设计模式】中介者模式
- springMVC对异常处理的支持
- Struts2之如何使用简单的UI标签