我有一个任务要做:
编写一个模拟以下现象的程序:死锁,活锁,饥饿。模拟的类型应为调用程序的参数。对现象进行时间限制,以使程序不会挂断。
我编写了一个模拟死锁,活锁和饥饿的程序,然后选择要在main中模拟的程序,但是我不知道如何设置时间限制。
这里是SOURCE CODE
我尝试过类似的事情:
case "D":
long start = System.currentTimeMillis();
System.out.println("DEADLOCK /n/n/n");
for (int i = 0; i < Bank.MAX_ACCOUNT; i++) {
long stop = System.currentTimeMillis();
Thread t = new Thread(new Transakcje(bank, i));
t.start();
if(stop-start)>someNumber {
System.out.println("TIME'S UP/n");
System.exit(1);
}
}
break;
但是它不起作用。