如何安全地使用 SwingWorker?

How can I use SwingWorker safely?

我刚刚开始使用 SwingWorker 作为迭代算法。在创建从 SwingWorker 扩展的 class 的对象后,我在从 JFrame 扩展的主要 class 的构造函数中执行了 execute() 函数。我在应用程序运行期间使用 doInBackground() 和 process() 函数。我不需要在整个应用程序中停止执行。当用户关闭我的 JFrame 应用程序时,我是否需要为 SwingWorker 执行任何停止或清理任务?我的意思是,直接关闭使用 SwingWorker 的 JFrame 应用程序是否安全?

谢谢

SwingWorker 使用它自己的 ExecutorService,由它自己的 ThreadFactory 支持,生成守护进程 Threads,这意味着 JVM 将能够退出一次非守护线程已经完成。

安全吗?这将归结为您的 SwingWorker 实际在做什么,但是如果您没有打开任何资源或没有其他进程依赖 SwingWorker 的结果来完成他们的工作(和关闭资源等),它应该是