java160109DeadLockTest
2016-01-16 09:24
429 查看
/**
* 死锁举例
*/
package java160109;
/**
* @author LiZheng
*
*/
public class DeadLockTest {
/**
* @param args
*/
public static void main(String[] args) {
Thread thread1 =new Thread(new Test(true));
Thread thread2 =new Thread(new Test(false));
thread1.start();
thread2.start();
}
}
class Test implements Runnable{
private boolean flag;
Test(boolean flag) {
this.flag=flag;
}
@Override
public void run() {
if (flag) {
while (true) {
System.out.println("if locka");
synchronized (MyLoack.locka) {
synchronized (MyLoack.lockb) {
System.out.println("if lockb");
}
}
}
} else {
while (true) {
System.out.println("else lockb");
synchronized (MyLoack.lockb) {
synchronized (MyLoack.locka) {
System.out.println("else locka");
}
}
}
}
}
}
class MyLoack{
static Object locka=new Object();
static Object lockb=new Object();
}
* 死锁举例
*/
package java160109;
/**
* @author LiZheng
*
*/
public class DeadLockTest {
/**
* @param args
*/
public static void main(String[] args) {
Thread thread1 =new Thread(new Test(true));
Thread thread2 =new Thread(new Test(false));
thread1.start();
thread2.start();
}
}
class Test implements Runnable{
private boolean flag;
Test(boolean flag) {
this.flag=flag;
}
@Override
public void run() {
if (flag) {
while (true) {
System.out.println("if locka");
synchronized (MyLoack.locka) {
synchronized (MyLoack.lockb) {
System.out.println("if lockb");
}
}
}
} else {
while (true) {
System.out.println("else lockb");
synchronized (MyLoack.lockb) {
synchronized (MyLoack.locka) {
System.out.println("else locka");
}
}
}
}
}
}
class MyLoack{
static Object locka=new Object();
static Object lockb=new Object();
}
相关文章推荐
- Java自学资料——线程
- Java I/O 扩展
- Java I/O 扩展
- Java I/O 扩展
- b1a2 Eclipse中添加Hibernate
- 深入学习Java编程中的字符串的进阶使用
- Java I/O
- Java I/O
- Java I/O
- JAVAWEB相对路径的配置
- JAVA反射
- 从头认识java-17.5 阻塞队列(以生产者消费者模式为例)
- 二维数组中的查找-自编java版本。
- Java多线程学习笔记(三)同步和异步
- spring+mybatis所需各种服务的搭建
- Eclipse安装SVN插件
- Perhaps you are running on a JRE rather than JDK
- moon.1 JAVA 耦合与内聚
- 关于Java文件删除的操作
- CXF Spring开发WebService,基于SOAP和REST方式