Exception in thread "AWT-EventQueue-0" java.lang.IllegalThreadStateException
at java.lang.Thread.start(Unknown Source)
at PlayUI.LyricsDisplay(PlayUI.java:509)
at PlayUI.playSong(PlayUI.java:868)
at PlayUI.playState(PlayUI.java:836)
at PlayUI$2.mouseClicked(PlayUI.java:287)
at java.awt.Component.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.List.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

解决方案 »

  1.   

    差出来是因为第一个线程没有结束直接有start了一边,那怎么杀死第一个线程呢?
      

  2.   

    给你个建议吧
    1 你的线程有结束条件吗?设置停止标志。
    2 2个线程有冲突,你应该等第一个线程结束,再启动第二个线程
    3 java的 Thread.stop 方法可以强行干掉线程,但不推荐。
      

  3.   

    如果您的是窗口对象的话可以使用
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
    或者调用
    dispose()
    方法