如何安全地使用 SwingWorker?
How can I use SwingWorker safely?
我刚刚开始使用 SwingWorker
作为迭代算法。在创建从 SwingWorker 扩展的 class 的对象后,我在从 JFrame 扩展的主要 class 的构造函数中执行了 execute() 函数。我在应用程序运行期间使用 doInBackground() 和 process() 函数。我不需要在整个应用程序中停止执行。当用户关闭我的 JFrame 应用程序时,我是否需要为 SwingWorker 执行任何停止或清理任务?我的意思是,直接关闭使用 SwingWorker 的 JFrame 应用程序是否安全?
谢谢
SwingWorker
使用它自己的 ExecutorService
,由它自己的 ThreadFactory
支持,生成守护进程 Thread
s,这意味着 JVM 将能够退出一次非守护线程已经完成。
安全吗?这将归结为您的 SwingWorker
实际在做什么,但是如果您没有打开任何资源或没有其他进程依赖 SwingWorker
的结果来完成他们的工作(和关闭资源等),它应该是
我刚刚开始使用 SwingWorker
作为迭代算法。在创建从 SwingWorker 扩展的 class 的对象后,我在从 JFrame 扩展的主要 class 的构造函数中执行了 execute() 函数。我在应用程序运行期间使用 doInBackground() 和 process() 函数。我不需要在整个应用程序中停止执行。当用户关闭我的 JFrame 应用程序时,我是否需要为 SwingWorker 执行任何停止或清理任务?我的意思是,直接关闭使用 SwingWorker 的 JFrame 应用程序是否安全?
谢谢
SwingWorker
使用它自己的 ExecutorService
,由它自己的 ThreadFactory
支持,生成守护进程 Thread
s,这意味着 JVM 将能够退出一次非守护线程已经完成。
安全吗?这将归结为您的 SwingWorker
实际在做什么,但是如果您没有打开任何资源或没有其他进程依赖 SwingWorker
的结果来完成他们的工作(和关闭资源等),它应该是