deadlocktest.java

来自「一个简单的Java并发系统动态测试工具」· Java 代码 · 共 50 行

JAVA
50
字号

import contest.*;

// 关于此示例程序的说明,请参见contest目录下的README.txt文件

public class DeadLockTest
{
	public static Object a = new Object();
	public static Object b = new Object();
	public static void main(String[] args)
	{		
		DeadLock1 t1 = new DeadLock1();
		DeadLock2 t2 = new DeadLock2();
		
		TestManager test = TestManager.getInstance();
		test.addThread(t1, "Thread1");
		test.addThread(t2, "Thread2");
		test.addEvent("Event1", 1000);
		
		test.start();
	}
}

class DeadLock1 extends Thread
{
	public void run()
	{
		synchronized(DeadLockTest.a)
		{
			TestManager.waitFor("Event1");
			synchronized(DeadLockTest.b)
			{
			}
		}
	}
}

class DeadLock2 extends Thread
{
	public void run()
	{
		synchronized(DeadLockTest.b)
		{
			TestManager.waitFor("Event1");
			synchronized(DeadLockTest.a)
			{
			}
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?