从未来(java.util.concurrent.Future)有没有办法知道它的进程当前是否正在运行?我正在尝试建立一个网页应用程序中的视图,显示某些进程的状态,我只能从未来,如果它是完成或被取消。
发布于 2012-12-12 04:50:25
这不是Future的重点。关键是它是未来结果的promise,因此得名。它不能保证它将如何或何时运行。它可以在当前线程上运行,也可以在不同的线程上运行,或者可能在不同的进程中运行。因此,除了存在或不存在之外,它没有任何状态--这或多或少就是重点。如果您想要监视某个线程的进度,则必须在较低的抽象层进行工作。
发布于 2012-12-12 04:41:40
那boolean isDone()呢?如果它仍在运行,则返回false。否则,您可以启动一个线程,该线程调用get()并阻塞,直到它完成。则该线程可以设置完成标志。
https://stackoverflow.com/questions/13828153
复制相似问题