futuretask相关内容

Android BluetoothSocket - 超时

我编写了一个用于连接外部配件的蓝牙 API.API的设计方式是有一堆阻塞调用,例如getTime、setTime、getVolume、setVolume 等这些工作的方式是创建一个有效负载来发送和调用一个名为 sendAndReceive() 的方法,该方法执行一些准备工作并最终执行以下操作: byte[] retVal = null;BluetoothSocket socket = getSo ..
发布时间:2022-01-04 20:23:30 Java开发

如何在 FutureTask 中捕获异常

在发现 FutureTask 在 Java 1.6(和来自 Eclipse)上的 Executors.newCachedThreadPool() 中运行后吞下了 Runnable.run() 方法,我试图想出一种方法来捕获这些,而无需将 throw/catch 添加到我所有的 Runnable 实现中. API 建议重写 FutureTask.setException() 应该有助于此: ..
发布时间:2021-12-28 22:58:45 Java开发

将来有结果吗?

我正在寻找一种方法的结果,该方法可能需要一段时间才能完成,并且实际上并未返回该对象,因此我想尽可能有效地对其进行处理.这是我要实现的目标的一个示例: public static void main(String [] args){对象obj = someMethod();System.out.println(“对象为" + obj +“,呜!");}公共无效的callObject(){//发送 ..
发布时间:2021-04-12 18:55:33 Java开发

Java FutureTask完成检​​查

我已经检查了Oracle Java API,该API提供了一些信息,但是我需要检查任务是否已完成或终止并出现任何错误. 即使完成/终止,isDone()方法也将返回.但是我需要知道它是否由于某些问题而完成或终止. 解决方案 如果完成FutureTask,请调用 ExecutionException-如果计算引发异常 ExecutionException.getCause()将返回任 ..
发布时间:2020-06-15 19:28:03 Java开发

Future.get(超时)的基础线程行为

我们正在使用 Future 并超时完成任务。当时间限制超过时,我们得到 TimeOutException 。从线程转储的行为,我意识到底层线程仍在继续。 是这样的吗?如何处理漫游的多线程? 如果从池中删除的线程没有抛出 IOException 怎么办? 如果这样是的, kill 底层线程的方法是什么。在我的情况下,它一直在等待外部 IO 。 线程转储的一部分: 线程295 ..
发布时间:2019-01-08 20:37:26 Java开发

如何进入FutureTask执行状态?

我有一个singleThreadExecutor,以便按顺序执行我提交给它的任务,即一个接一个的任务,没有并行执行。 我已经运行了类似这样的事情 MyRunnable实现Runnable { @Override public void run() { try { Thread.sleep(30000); } catch(InterruptedException e1) ..
发布时间:2018-12-12 19:32:55 Java开发

java Callable FutureTask Excecuter:如何监听已完成的任务

我对执行者服务很陌生。喜欢自己做所有事情,但我认为是时候相信这些服务了。 我想交出 Executer a 可运行。执行者将它包装在 FutureTask 中并将其交还给我。现在我调用 done()方法调查。但是我希望在 done()方法返回true时收到通知。 有一个 get()阻塞直到 Runnable 完成的方法,但是我需要为每个作业添加一个额外的线程,只是为了看看它什么时候结束。 ..
发布时间:2018-12-11 22:03:05 Java开发

如何终止多线程中超时的任务?

我需要创建一个库,其中包含同步和异步方法。 executeSynchronous () - 等到我有结果,返回结果。 executeAsynchronous() - 返回如果需要的话,可以在完成其他事情后立即处理的未来。 我的图书馆的核心逻辑 客户将使用我们的库,他们将通过传递 DataKey 构建器对象来调用它。然后,我们将使用该 DataKey 对象构造一个URL,并通过执 ..
发布时间:2018-12-10 10:54:43 Java开发

Java中的Future和FutureTask有什么区别?

由于使用 ExecutorService 可以提交 a 可调用任务并返回 Future ,为什么需要使用 FutureTask 来包装 Callable 任务并使用方法执行?我觉得他们都做同样的事情。 解决方案 事实上你是对的。这两种方法是相同的。您通常不需要自己包装它们。如果你是,你可能会复制AbstractExecutorService中的代码: / ** *返回 ..
发布时间:2018-12-06 13:07:44 Java开发

在TimeoutException之后如何让FutureTask返回?

在下面的代码中,我按照预期在100秒后捕获TimeoutException。在这一点上,我希望代码退出main和程序终止,但它继续打印到控制台。如何在超时后让任务停止执行? private static final ExecutorService THREAD_POOL = Executors.newCachedThreadPool(); private static T ..
发布时间:2018-12-05 11:09:18 Java开发

如何使用ThreadPoolExecutor和自定义任务实现PriorityBlockingQueue

我经常搜索,但找不到解决问题的方法。 我有自己的类 BaseTask ,它使用 ThreadPoolExecutor b来处理任务。 如果我不想确定优先级(即使用 LinkedBlockingQueue ),这个工作正常,但当我尝试使用 PriorityBlockingQueue 我得到 ClassCastException 因为 ThreadPoolExecutor 包裹了我的任务到 ..
发布时间:2018-11-28 21:13:51 Java开发

如何转换java未来< V>到番石榴可听见的< V>

我需要找到一种从Future到ListenableFuture的转换方式。 目前我使用一个返回Future的服务,但我需要连接一个监听器。 我不能更改服务接口,因为它不属于我。 有简单的方法吗? 我已经读过番石榴文件,但仍然找不到办法。 解决方案 Guava为此转换提供 JdkFutureAdapters 类型。 API 说明 使用提供纯文本的库所需的实用程序 未来 ..
发布时间:2016-12-26 19:30:18 Java开发