我是靠谱客的博主 火星上蓝天,这篇文章主要介绍java线程的sleep、yield、wait、join方法,现在分享给大家,希望可以做个参考。

  1. sleep()方法
    运行中的线程,执行sleep()方法,放弃CPU,转到阻塞状态。但不会放弃占有的资源,例如锁。sleep()时间结束,进入可运行状态。
  2. yield()方法
    执行yield()方法,如果此时有相同或更高优先级的其他线程处于就绪状态,那么yield()方法把当前线程放到可运行池中。如果只有相同优先级的线程,那么,该线程可能接着马上执行。如果没有相同或更高优先级线程,则什么也不做。yield()方法并不会释放锁。
  3. wait()方法
    wait方法用于线程通信,与notify,nofityall配合使用。它必须在synchronized语句块内使用。wait()方法使当前线程暂停执行并释放对象锁标示,让其他线程可以进入synchronized数据块,当前线程被放入对象等待池。有关具体的内容,在下面一篇文章中详细讲解。需要注意,该方法是java.lang.Object的方法。
  4. join()方法
    当前运行的线程执行另一个线程的join()方法,当前线程进入阻塞状态,直到另一个线程运行结束,它才会恢复到可就绪状态。join()方法,调用了wait(),因此它会释放锁。

最后

以上就是火星上蓝天最近收集整理的关于java线程的sleep、yield、wait、join方法的全部内容,更多相关java线程内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(132)

评论列表共有 0 条评论

立即
投稿
返回
顶部