java-典型的死锁问题
发布日期:2021-05-07 10:13:27 浏览次数:44 分类:精选文章

本文共 741 字,大约阅读时间需要 2 分钟。

典型的死锁问题

package com.test;//典型的死锁public class Test {   		public static void main(String[] args) {   		Thread one = new A();		Thread two = new B();		one.start();		two.start();			}}class Mylock{   	public static Object a = new Object();	public static Object b = new Object();}class A extends Thread{   	@Override	public void run() {   		synchronized (Mylock.a) {   			System.out.println("A拿到了a");			synchronized (Mylock.b) {   				System.out.println("A拿到了b");				System.out.println("A拿到了a和b");			}		}	}}class B extends Thread{   	@Override	public void run() {   		synchronized (Mylock.b) {   			System.out.println("B拿到了b");			synchronized (Mylock.a) {   				System.out.println("B拿到了a");				System.out.println("B拿到了a和b");			}		}	}}

输出

A拿到了aB拿到了b
上一篇:html-jQuery的ready方法比onload方法慢的奇怪现象
下一篇:java学习-HashSet 添加引用类型 的 内容去重原理,究其原码

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月18日 23时41分59秒