概述
- sleep()方法
运行中的线程,执行sleep()方法,放弃CPU,转到阻塞状态。但不会放弃占有的资源,例如锁。sleep()时间结束,进入可运行状态。 - yield()方法
执行yield()方法,如果此时有相同或更高优先级的其他线程处于就绪状态,那么yield()方法把当前线程放到可运行池中。如果只有相同优先级的线程,那么,该线程可能接着马上执行。如果没有相同或更高优先级线程,则什么也不做。yield()方法并不会释放锁。 - wait()方法
wait方法用于线程通信,与notify,nofityall配合使用。它必须在synchronized语句块内使用。wait()方法使当前线程暂停执行并释放对象锁标示,让其他线程可以进入synchronized数据块,当前线程被放入对象等待池。有关具体的内容,在下面一篇文章中详细讲解。需要注意,该方法是java.lang.Object的方法。 - join()方法
当前运行的线程执行另一个线程的join()方法,当前线程进入阻塞状态,直到另一个线程运行结束,它才会恢复到可就绪状态。join()方法,调用了wait(),因此它会释放锁。
最后
以上就是火星上蓝天为你收集整理的java线程的sleep、yield、wait、join方法的全部内容,希望文章能够帮你解决java线程的sleep、yield、wait、join方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复