我想暂停我的游戏,但是,我只知道Thread.sleep,并且,我不知道如何让它实际暂停,直到你继续使用该方法。我将如何暂停游戏,直到我想恢复它?
答案 0 :(得分:3)
让它等待条件:
synchronized(lock) {
while(paused) {
lock.wait();
}
}
做同样事情的现代方法是使用java.util.concurrent.locks.Condition
link
答案 1 :(得分:2)
在每次迭代之前,您需要使用wait
和notify
来锁定对象。如果对象在对象上发出wait
,则游戏暂停,直到用户选择恢复选项并使用notify
调用释放对象。
查看此链接以获取教程.. http://www.java-samples.com/showtutorial.php?tutorialid=306
答案 2 :(得分:0)
您可以使用锁定
private final Lock pauser = new ReentrantLock();
在您要暂停的主题中。
pauser.lock();
pauser.unlock();
停止尝试使用暂停的任何内容
pauser.lock();
释放暂停
pauser.unlock();