【发布时间】:2012-12-14 00:04:46
【问题描述】:
我对 java 还很陌生,并且开始使用不同的线程,以便在我的代码的一部分上使用 wait() 或 sleep() 并让其他部分仍然运行。
对于这个项目,我将 JFrame 与 javax.swing.* 和 java.awt.* 导入一起使用。我想要做的是让其中一个线程(在我的代码中它是主要的起始线程)允许玩家在井字游戏板上选择一个空间,当他们点击它时,它会改变图标,并且然后 AI 将等待 1 秒钟,然后再从我创建的第二个线程播放。
不幸的是,每当我调用ait.sleep(1000)(ait 是我的线程名称)时,两个线程都会等待 1 秒钟才能完成执行。谁能告诉我为什么休眠一个线程会停止我的整个执行?
【问题讨论】:
-
您是从
ait线程内部还是从其他线程调用ait.sleep(1000)? -
是的,我从 ait 内部调用 sleep(1000)
标签: java multithreading swing event-dispatch-thread thread-sleep