Object waitLock = new Object();
while(!IsHappened)
{
synchronized(waitLock) {
try{
waitLock.wait();
}catch(Exception e ) {}
}
}
另外的线程在置IsHappened=true之后,调用waitLock.notify()唤醒
while(!IsHappened)
{
synchronized(waitLock) {
try{
waitLock.wait();
}catch(Exception e ) {}
}
}
另外的线程在置IsHappened=true之后,调用waitLock.notify()唤醒
解决方案 »
- Java应用程序CommApi操作串口的问题!急,在线等!
- 如何制作一个简单的能打开文本的程序
- ResultsModel是哪个类里的?
- 很有挑战的java IO 问题,如何实现byte[]转化为FileInputStream,不经过存储为文件
- jdk1.5的设置?好象跟1.4那些不一样的,我不知道怎么设置?
- 还是不能实现的问题!各位帮一下!
- 为什么访问类里的变量时,老是用getxxx()方法,而不用Objectname.xxx
- 跪求JFrame,JWindow的问题。(在线等待)
- java程序能否调用系统的共享内存
- Java的编译问题?
- 初学者提问:关于JavaMail的问题,谢谢!
- 请问引号里要包含引号该怎么写?
java的线程易用好用
不要用这种while循环等待的方式,可以用多线程来解决这个问题。当一个线程需要等待时,就用wait()方法使它进入sleep状态。当另一个线程中的事件被触发后,再用notify()方法来唤醒它。
你可以去看看书中关于线程的介绍。