黑马程序员_多线程死锁
来源:互联网 发布:淘宝桔子表行是正品吗 编辑:程序博客网 时间:2024/05/24 01:38
------- android培训、java培训、期待与您交流! ----------
* 死锁简单示例
* 死锁的原因是由于 两个线程相互等待 对方已被锁定的资源package com.thread;
/**
* 死锁简单示例
* 死锁的原因是由于 两个线程相互等待 对方已被锁定的资源
* @author YangBaoBao
*
*/
public class DeadLock {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Object obj=new Object();
Object obj1=new Object();
DeadLockThread diedLock=new DeadLockThread(obj,obj1);
DeadLockThread1 diedLock1=new DeadLockThread1(obj,obj1);
diedLock.start();
diedLock1.start();
}
}
class DeadLockThread extends Thread
{
private Object obj;
private Object obj1;
public DeadLockThread(Object obj,Object obj1)
{
this.obj=obj;
this.obj1=obj1;
}
@Override
public void run() {
synchronized (obj) {
try {
Thread.sleep(100);
synchronized (obj1) {
obj1.getClass();
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
class DeadLockThread1 extends Thread
{
private Object obj;
private Object obj1;
public DeadLockThread1(Object obj,Object obj1)
{
this.obj=obj;
this.obj1=obj1;
}
@Override
public void run() {
synchronized (obj1) {
try {
Thread.sleep(100);
synchronized (obj) {
obj.getClass();
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
------- android培训、java培训、期待与您交流! ----------
- 黑马程序员_多线程死锁
- 黑马程序员_多线程(死锁)
- 黑马程序员_多线程之死锁
- 黑马程序员_多线程与死锁
- 黑马程序员-多线程死锁
- 黑马程序员_多线程的死锁和等待唤醒机制
- 黑马程序员_线程死锁
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_多线程
- 黑马程序员_Java中的Heap和Stack
- Session对象的load()方法和get()方法的区别
- 下沉的船
- fdgdfgdfgdsf
- Ubuntu环境变量——添加与删除
- 黑马程序员_多线程死锁
- Android 解决布局问题
- 20个数据库设计最佳实践
- 黑马程序员_java jdbc
- Android SimpleAdapter显示问题
- 黑马程序员_java网络编程技术的理解
- Property Service学习(一)
- 华为Ascend Mate | 6.1英寸大屏手机 | 零距离高清图赏
- 黑马程序员_Java反射技术