我创建了一个以某种循环运行的程序,并且仅在特定事件发生时才会停止;我忘了实现从“外部”中断程序的可能性,例如在提示符中输入“halt”。将主体转变为线程
所以现在我有这样的事情:
public void main(....) {
instruction1;
instruction2;
while(true) {
if(???)
break;
}
}
而想改变它在类似:
main() {
do {
instruction1;
instruction2;
...
...
} while(prompt do not contains 'halt');
你将不得不在两个不同的线程中做这个。看看这个:http:// stackoverflow。 com/questions/8980240/getting-a-thread-to-pause-thread-wait-thread-notify。它有一个很好的扩展答案。 – Zerkz
此外,如果您只想在命令行提示环境(对于大多数操作系统,至少)中明确地停止该程序,则可以简单地使用Ctrl-C,在大多数情况下它将终止程序(但并非总是...) – Zerkz