gpt4 book ai didi

java - 如果线程失败,函数必须返回true

转载 作者:行者123 更新时间:2023-12-03 12:59:23 24 4
gpt4 key购买 nike

我有一个可以完成某些工作的函数,如果失败或有异常,它将返回true。
现在,我正在此函数中创建一个线程,负责执行相同的工作。现在,如果线程执行此任务时抛出某些异常,如何使函数返回true?

   boolean read(){   
service.execute(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
//does the required work.
});
}

最佳答案

您可以通过以 Callable 而不是Runnable的形式提供要由新线程执行的逻辑来实现此目的。与Runnable不同,Callable允许您将某些结果返回给以 Future 形式调用它的代码。

boolean read() {   
Future<Boolean> future = service.submit(() -> {
// Do your calculations and return whatever is required
return true;
});

// future.get() blocks current thread execution until Callable returns the result
return future.get();
}

我还建议阅读 ThreadPoolExecutor + Callable + Future Example文章和JavaDocs中的 Callable Future ExecutorService 类。

关于java - 如果线程失败,函数必须返回true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46446248/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com