Thread.wait()与Thread.yield()的区别

来源:互联网 发布:电子盖章软件免费版 编辑:程序博客网 时间:2024/05/19 03:46

前段时间,在项目的开发过程中,明明配置了多线程,但是运行的时候却总是一个线程在跑,

当时就怀疑可能是因为一个线程独占了系统资源,造成了其他线程没有执行的机会,因此,

就 研究一下yield方法并顺便查了一下wait和yeild的方法的区别。

1.使用wait等待时间,其实是停止在等待区内停止执行,所以不会浪费Java执行环境的处理时间。而field()方法(尽可能把优先级别交给其他线程)则会在等待中的线程也在持续运行着,会占用Java虚拟机执行时间。
2.执行wait方法时,其当前线程锁住的资源会释放,而yield方法则不会释放其锁。

原创粉丝点击