Java中断线程

时间:2016-08-12 18:28:46

标签: java multithreading runnable

我的代码如下。我有以下问题:我必须停止Thread t,但内部是一个将线程在一个地方暂停很长时间的方法。因此,当我试图阻止它时,它会在执行该方法后停止。任何人都知道如何终止此线程或在线程内执行方法时以任何其他方式停止它?

public class MyClass extends JFrame implements Runnable{       
    @Override
    public void run() {   
        OtherClass oc = new OtherClass();
        Runnable r = oc;
        Thread t = new Thread(r);
        t.start();

        addButton(buttonPanel, "Stop it", new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent event) {
                System.out.println("stopping");
                t.stop();                      
                setVisible(false);                
            }
        }); 
    }
}    

public void addButton(Container c, String title, ActionListener listener) {
    JButton button = new JButton(title);
    c.add(button);
    button.addActionListener(listener);
}

0 个答案:

没有答案