Java 如何在线程睡眠期间获取用户输入?
我有一个方法可以将当前线程延迟一段指定的时间,这段时间按照预期的方式工作。问题是我希望能够在延迟期间保存用户输入,这样,如果延迟期间的用户输入是“保存游戏”,那么将调用一个方法,程序将结束。我该怎么做呢。我目前的延迟方法是:Java 如何在线程睡眠期间获取用户输入?,java,multithreading,delay,Java,Multithreading,Delay,我有一个方法可以将当前线程延迟一段指定的时间,这段时间按照预期的方式工作。问题是我希望能够在延迟期间保存用户输入,这样,如果延迟期间的用户输入是“保存游戏”,那么将调用一个方法,程序将结束。我该怎么做呢。我目前的延迟方法是: public void delay() throws InterruptedException, IOException { try { Thread.currentThread().sleep(6000);
public void delay() throws InterruptedException, IOException {
try {
Thread.currentThread().sleep(6000);
} catch(InterruptedException ex) {
Thread.currentThread().interrupt();
}
}
睡眠=真的什么都不做。您必须添加事件侦听器并单独处理保存事件。如果需要的话,你也可以从侦听器中断这个线程并结束睡眠。我不确定你想通过睡眠实现什么。我想你应该用一个。还有一些java游戏库可以在这方面给你很大的帮助。一个朋友教我:如果你使用sleep(),那你就错了。无论您使用sleep()的原因是什么,您都可以在不睡觉的情况下做得更好