【发布时间】:2013-06-08 03:56:33
【问题描述】:
我什至不知道如何解决这个问题,但是在阅读了一些内容并进行了很多尝试(失败)之后,我决定向社区寻求帮助。我有表单 A 打开并要求用户输入延迟表单 B 打开的时间。目前我正在使用sleep() 来执行此操作,但现在我想插入另一个对话框以允许用户在计时器用完之前中断计时器并调出表单 B。我相信正确的方法是使用wait() 和notify(),但我似乎无法理解生产者和消费者模型的众多示例。任何帮助表示赞赏。
【问题讨论】:
-
不要阻塞 EDT(事件调度线程)——当这种情况发生时,GUI 将“冻结”。而不是调用
Thread.sleep(n)为延迟任务实现SwingTimer。有关详细信息,请参阅Concurrency in Swing。
标签: java multithreading swing sleep wait