0

嗨,我想在 EDT 之外执行一项任务,因为我不想每次单击按钮时都冻结我的界面:

长期任务是 fBPC 的函数paintComponent 然后我必须为 fBPC.repaint() 创建新线程。但是即使有了这个新线程,我的界面仍然冻结(因为我想在后台完成任务时单击我的按钮),我该怎么办?也许我应该在另一部分创建线程?

new Thread(new Runnable(){

                @Override
                public void run() {
                    // TODO Auto-generated method stub
                    fBPC.repaint();
                    System.out.println("toto");
                    if (SwingUtilities.isEventDispatchThread()){
                        System.out.println("titi");
                    }
                }
            }).start();
4

0 回答 0