wait()和notify()的使用(来源于网络)
来源:互联网 发布:iphone7 阅读软件 编辑:程序博客网 时间:2024/04/27 16:36
在使用wait()的时候,一定要放到synchronized块中,或者把方法定义为synchronized,不然会出现错误提示 current thread not owner。
synchronized块的执行效率比synchronized方法快很多,所以除非有特殊理由,一般情况下优先使用synchronized块。
同样,在其他线程中调用wait()线程的notify()或者是notifyAll()时,也要注意一定要使用synchronized,不然将无法找到线程。示例如下
class Exercise08A extends Thread {public Exercise08A() {start();}public void run() {try {System.out.println("waiting start");synchronized (this) {wait();}System.out.println("waiting end");} catch (InterruptedException e) {e.printStackTrace();}}}class Exercise08B extends Thread {Exercise08A ea;public Exercise08B(Exercise08A ea) {this.ea = ea;start();}public void run() {try {System.out.println(" before notifyAll() ");synchronized (ea) {ea.notify();}System.out.println(" after notifyAll()");} catch (Exception e) {e.printStackTrace();}}}
- wait()和notify()的使用(来源于网络)
- wait和notify的使用
- wait和notify的使用
- wait 和notify的使用
- wait和notify使用
- Object的Wait() 和notify()方法使用
- wait和notify的理解与使用
- java wait和notify的使用
- java wait和notify的使用
- Java wait()和notify()的使用
- wait和notify的理解与使用
- wait和notify的理解与使用
- wait()/notify()的使用
- wait, notify 和 notifyAll 使用
- wait, notify, notifyAll的使用
- java的wait和notify
- java notify()和notifyall()的区别&wait()方法的使用
- Thread:线程之间的通信,使用wait()和notify()
- WordPress文章缩略图使用详解
- 新父母的100个教育信条!
- Hash Table(哈希表
- 关于Eclipse的SVN插件(Subclipse)历史版本乱码的问题
- ExecuteQuery 3.2.3 升级为 3.2.4 后不能用
- wait()和notify()的使用(来源于网络)
- QT源码下载地址
- OpenNebula跨地域管理
- oracle 查询 显示前10条
- @shell中join命令的一些使用方法@
- java 访问修饰符
- 很幽默的讲解六种Socket I/O模型
- 流星蝴蝶剑连招表
- 人类无法阻止学生逃课?吉大老师发明蓝牙点名