Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 线程不工作_Java_Multithreading_Swing - Fatal编程技术网

Java 线程不工作

Java 线程不工作,java,multithreading,swing,Java,Multithreading,Swing,我有一个空延伸线程的对象 我做了两个按钮:A为线程对象A,B为线程对象B。问题是当我只按A或B时线程工作正常,但当我在按A后按B时线程不工作。我解决不了。请告诉我怎么修。代码是这样的 buttonA.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0){ thread(object a).run(); } buttonB.addActionListener

我有一个空延伸线程的对象

我做了两个按钮:A为线程对象A,B为线程对象B。问题是当我只按A或B时线程工作正常,但当我在按A后按B时线程不工作。我解决不了。请告诉我怎么修。代码是这样的

buttonA.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent arg0){
        thread(object a).run();
}
buttonB.addActionListener(new ActionListener(){
    public void actionPerformed(ActionEvent arg0){
        thread(object b).run();
}

啊,您正在调用线程上的run not start。这将不允许线程在后台线程上调用其代码,而是在Swing事件线程上调用它。而是调用start。如果这没有帮助,那么请问一个更好的问题。

1这不是真正的代码,即对象a和对象b的内容无法编译,2我不确定如何根据目前提供的有限信息猜出错误。我认为您需要讲述更多内容并显示更多代码,最好是让我们开始接近理解问题。没有理解,就没有解决办法。谁知道a和b是干什么的?上帝只知道什么不起作用。我们很聪明,也很有天赋,但不幸的是,我们不是读心术的人,也不能开始猜测没有显示的代码。根据他的描述,我假设他新生成的线程实际上不是作为线程运行的,而是阻塞了他的UI线程。但是,更多的上下文是有帮助的。就像一些额外的信息一样,除非向线程类添加功能,否则扩展线程类并不是很好的做法+1因为我们很聪明,很有天赋,在评论中,+1因为在《不介意的读者》中犯了错误,这是亚历克斯·林奇第一次看到这一点。我对他最近的几个好答案投了赞成票。我正要抱怨呢!只要他的问题得到回答:没有必要——声誉只是一个数字。