用wait()和notify()进行线程通信时,wait()的一般格式为:
synchronized void waitMethod(){
while(!condition) wait();
//条件为真时执行下面的语句
} **这里面的条件测试始终在一个循环内,永远不要假定被唤醒意味着条件已满足。
也就是说 ,不要把while改写成if.**
**之间的话不太清楚意思,请解释一下if 和 while 到底有什么区别。
谢谢!!
synchronized void waitMethod(){
while(!condition) wait();
//条件为真时执行下面的语句
} **这里面的条件测试始终在一个循环内,永远不要假定被唤醒意味着条件已满足。
也就是说 ,不要把while改写成if.**
**之间的话不太清楚意思,请解释一下if 和 while 到底有什么区别。
谢谢!!
解决方案 »
- 急求thinking in java 3rd和thinking in java 4rd 的练习答案
- 如何用JAVA编写DB2数据库的备份程序
- 关于转义字符的错误分析,请帮忙看看
- 有关于Vector的问题(急)
- 一个根据字符串生成xml树的问题!!
- FileDialog问题
- 论坛怎么不能注册新用户了
- 请问对原始对象引用的问题
- JAVA中的JFrame组件有没有类似JDesktopPane的setDragModel方法设置JInternalFrame拖动方式的方法来设置JFrame
- 说说这几本书,那个好点..
- 请大家来看一下这个程序有什么错误分给的少大家不要嫌撒,就是练练吗。。。
- 高手进!!!!装JDK的问题!!!!!!!!!!!!!!
也可以执行下面的语句了,对吗?
要是这样的话,那notify()不就没取到作用了。
晕了!!