Thread.join()
让一个线程等待另一个线程完成才继续执行。
示例:如A线程线程执行体中调用B线程的join()方法,则A线程被阻塞,知道B线程执行完为止,A才能得以继续执行。
Thread.sleep()
让当前的正在执行的线程暂停指定的时间,并进入阻塞状态。在其睡眠的时间段内,该线程由于不是处于就绪状态,因此不会得到执行的机会。即使此时系统中没有任何其他可执行的线程,出于sleep()中的线程也不会执行。
因此sleep()方法常用来暂停线程执行。
Thread.yield()
当某个线程调用yiled()方法从运行状态转换到就绪状态后,CPU从就绪状态线程队列中只会选择与该线程优先级相同或优先级更高的线程去执行。

本文介绍了Java中三个线程方法。Thread.join()可让一个线程等待另一个线程完成后再继续执行;Thread.sleep()能使当前线程暂停指定时间并进入阻塞状态,常用于暂停线程执行;Thread.yield()会让线程从运行状态转为就绪状态,CPU会选择相同或更高优先级线程执行。
519

被折叠的 条评论
为什么被折叠?



