我有三个线程t1,t2,t3。我需要让t1在t2和t3之前完成它的工作,它们也同时运行。 我怎样才能确保这一点? 一种方法是通过设置线程优先级,还有其他方法可以做同样的事情。
答案 0 :(得分:1)
在t1
完成后启动它们
例如
t1.start();
t1.join();
t2.start();
如果您可以访问run()
方法,将它们全部锁定在同一个对象上,并且订单对您无关紧要
例如
Object lock = new Object();
public void run(){
synchronized(lock){
// have all run method this lock
}
}