1

您好正在运行一个小程序代码处理,EventQueue如下所示

EventQueue.invokeLater(new Runnable(){
    public void run(){
        plotApplet();
    }
});

听说plotApplet()处理小程序组件设置已完成。现在我想访问正在运行这个Runnable类的线程。我需要这个,因为有需要,当用户发送下一个进程请求时我必须明确停止这个线程,所以我只想停止这个可能需要很长时间的前一个线程,然后我立即启动新线程。

所以请告诉我如何获得对运行的线程的引用EventQueue

4

1 回答 1

4

您不能将此 EventQueue 用于长时间运行的任务。如果您这样做,您的 GUI 将锁定,您将无法停止它,直到它停止,这不是很有用。

如果你有一个长时间运行的任务,你应该启动你自己的线程,例如一个 ExecutorService,你可以发出任务,你可以调用Future.cancel(true)它来要求它停止

于 2012-12-28T10:42:03.743 回答