Java 将TimerTask中的异常抛出到另一个方法
我想将以下异常抛出到另一个方法,但我不知道如何正确地实现这一点Java 将TimerTask中的异常抛出到另一个方法,java,exception,timer,timertask,Java,Exception,Timer,Timertask,我想将以下异常抛出到另一个方法,但我不知道如何正确地实现这一点 public void startTimeoutHandler() throws TimeoutException { timer = new Timer(); timerTask = new TimerTask() { @Override public void run() { throw new TimeoutException();
public void startTimeoutHandler() throws TimeoutException
{
timer = new Timer();
timerTask = new TimerTask()
{
@Override
public void run()
{
throw new TimeoutException();
}
};
}
谢谢大家!
实际上是TimerTask
的实现,这是一个相当有限的抽象<代码>运行()无法返回值或引发选中的异常Runnable
- 用法:它也是为实例可能由另一个线程执行的类而设计的,但与
不同,它的Runnable
方法可以返回结果并抛出选中的异常call()
线程正在监听,否则你不能这样做。我建议使用一个ScheduledExecutorService
,以便另一个线程可以通过将来的接收这些异常。请注意,java.util.Timer
实际上并不建议在新代码中使用。
class MyTask implements Callable<Integer>{
@Override
public Integer call() throws TimeoutException{
throw new TimeoutException();
}
}
void usingCallable(MyTask e) {
e.call(); // error: must catch Exception
}
<V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit)