0
我有一个逐步显示某个迭代过程的GUI。 我希望它让一步,显示了步,等待1秒,然后重复,...java:为什么等一段时间让我的程序不能顺序执行?
代码:
while (! finished()) {
advance(); // make and display one step
try {
Thread.sleep(1000);
}
catch (InterruptedException e) {
}
}
会发生什么,不过,是没有打印,直到加全所有睡眠呼叫的时间都会通过,然后所有步骤都会立即打印。 如何顺序执行流程?
注意:我尝试用一个非常长的无用循环替换睡眠呼叫,并且行为是相同的。
因为您在UI调度线程中调用'sleep'。可能的重复[我应该在java swing程序中使用thread.sleep?](http://stackoverflow.com/questions/9194721/where-should-i-use-thread-sleep-in-a-java-swing -program) –
这是一个Swing GUI应用程序吗?你如何显示该步骤? –