join方法
线程A执行了线程B的join方法,,线程A必须要等线程B执行完成后,线程A才能继续执行
感觉像是插队[捂脸]
package org.dance.day1;
import org.dance.tools.SleepTools...;
/**
* join方法的使用
*/
public class UseJoin {
//
static class JumpQueue implements Runnable...让主线程休眠2秒
System.out.println(Thread.currentThread().getName() + " terminate.");
}
}
接下来说一下调用...yield sleep wait notify方法会对锁产生的影响
yield:
线程在执行yield以后,持有的锁是不会释放的
sleep:
线程在进入Sleep之后,锁也是不会释放的
wait...:
调用wait方法之前,必须要先持有锁,调用wait方法以后,锁会被释放,当wait方法被唤醒时,线程会重新持有锁
notify:
调用notify之前,也必须要持有锁,调用notify方法本身不会释放锁