线程生命周期
2021-04-08 12:10:02 7 举报
线程生命周期
作者其他创作
大纲/内容
1.用户输入完成2.sleep()时间完成3.t2线程结束
join描述:java多线程编程join的作用是等待线程结束,这个作用可以产生很多特定的场景。 1)A线程中调用B线程的join方法,那么A线程需要等待B线程执行完成后才能完成 2)主线程中依次调用A线程的join方法,B线程的join方法,可以保证A,B线程顺序执行;是主线程进入等待状态,子线程在运行,子线程运行完成后会通知主线程继续运行,或者join也可以设置主线程的等待时间,当主线程等待超时时,即使子线程没有运行完,主线程也会开始继续执行
new Thread(....)新建
synchronized
wait()
wait是指在一个已经进入了同步锁的线程内,让自己暂时让出同步锁,以便其他正在等待此锁的线程可以得到同步锁并运行,只有其他线程调用了notify方法(notify并不释放锁,只是告诉调用过wait方法的线程可以去参与获得锁的竞争了,但不是马上得到锁,因为锁还在别人手里,别人还没释放),调用wait方法的一个或多个线程就会解除wait状态,重新参与竞争对象锁,程序如果可以再次得到锁,就可以继续向下运行。
running运行状态
start()
1.等待用户输入2.sleep()3.t2线程join()
dead死亡
会释放锁
1.时间片用完2.thread.yield
不会释放锁
获得时间片
锁池
runnable可运行状态
阻塞状态
等待队列
拿到锁标识
0 条评论
下一页