上面一篇介绍了线程的声明周期,锁的概念等基本信息,线程中还有一些方法;
1、wait()和notify(),wait方法是让当前线程进入阻塞状态,必须等待唤醒notify才能进入就绪状态继续运行。当线程wait的同时,会释放当前锁
2、yield():线程让步,调用该方法会让当前线程从运行状态变为就绪状态,等待跟他具有相同优先级的线程之行完成之后再执行;
需要注意的是,yield不会释放当前锁,如果同步情况下调用其余线程获得不到锁,不能生效
3、sleep():让当前线程休眠,sleep会指定休眠的时间!休眠时不会释放同步锁
4、join():让当前父线程等待jion进来的子线程运行完之后再运行,join调用是主线程会释放当前锁;
综上:
会释放锁的:wait和join
不会释放锁的:yield和sleep