死锁

文章目录


死锁

java 复制代码
public class MyThread extends Thread {

    //创建锁对象
    static Object objA = new Object();
    static Object objB = new Object();


    @Override
    public void run() {
        while (true) {
            if (getName().equals("线程1")) {
                synchronized (objA) {
                    System.out.println("线程1获得A锁,准备B锁");
                    synchronized (objB) {
                        System.out.println("线程1获得A锁与B锁");
                    }
                }
            } else if (getName().equals("线程2")) {
                synchronized (objB) {
                    System.out.println("线程2获得B锁,准备A锁");
                    synchronized (objA) {
                        System.out.println("线程2获得B锁与A锁");
                    }
                }
            }
        }
    }
}
---------------------------
线程1获得A锁,准备B锁
线程2获得B锁,准备A锁
相关推荐
wefg15 分钟前
【C++】特殊类设计
开发语言·c++
Geoking.6 分钟前
【Java】Java Stream 中的 collect() 方法详解:流最终操作的核心工具
java·开发语言
z***I39411 分钟前
JavaScript爬虫应用案例
开发语言·javascript·爬虫
帅中的小灰灰16 分钟前
C++编程原型设计模式
开发语言·c++
清风徐来QCQ28 分钟前
javaScript(map,ref,?,forEach,watch)
java·前端·javascript
7***n7531 分钟前
Java构建工具
java·开发语言
u***u6851 小时前
Kotlin多平台开发实践
android·开发语言·kotlin
Dandelion____z1 小时前
AI 驱动业务的致命风险:如何用架构设计守住安全底线?
java·大数据·人工智能·spring boot·aigc·jboltai
Q***K551 小时前
Kotlin与Java互操作指南
java·开发语言·kotlin
星月前端1 小时前
[特殊字符]面向 ArcGIS for JavaScript(4.x)开发者的「坐标系统(CRS / 投影)」全面解读
开发语言·javascript·arcgis