0 java
我有两个功能,一个是主人,另一个是奴隶.通过主函数我正在尝试学习其他函数的行为.但我应该做任何计算是一个设定的时间间隔.在这一部分中,如何设置一个计时器,如果发生超时则标记为布尔变量,并了解是否发生超时?
func1 -----send message------> func2
start timer
if timeout occur, do something else
Run Code Online (Sandbox Code Playgroud)
您可以func2在另一个Thread中执行,并让您的原始Thread join()具有指定的超时.
当然,您需要注意正确的同步.
简单的例子(遗漏InteruptedException处理)
void func1(){
Thread slave = new Thread(new Runnable(){
public void run(){
func2();
}
});
slave.start();
slave.join(100); // waits 100 milliseconds for slave to complete
if(!slave.isAlive()){
//slave completed its task
}else{
//slave not done yet, do something else
somethingElse();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3048 次 |
| 最近记录: |