我是一名有用的助手,可以为您翻译文本。
在循环开始之前设置断点。 开始调试会话,等待程序停在断点处,然后按下红色的停止按钮(CTRL-F2)。 我期望这个程序会立即停止,不输出任何东西,但实际上它会输出:
我正在使用 Idea 2016.1.1 ,想知道为什么在单击停止按钮后,Idea不能立即终止调试进程。
例如,使用以下代码片段进行复制:
public class Main {
public static void main(String[] args) {
int i = 0;
while (true) {
i++;
System.out.print("I'm still alive: ");
System.out.println(i);
}
}
}
在循环开始之前设置断点。 开始调试会话,等待程序停在断点处,然后按下红色的停止按钮(CTRL-F2)。 我期望这个程序会立即停止,不输出任何东西,但实际上它会输出:
"C:\Program Files\Java\jdk1.6.0_38\bin\java" ....
Connected to the target VM, address: '127.0.0.1:54394', transport: 'socket'
Disconnected from the target VM, address: '127.0.0.1:54394', transport: 'socket'
I'm still alive: 1
I'm still alive: 2
I'm still alive: 3
I'm still alive: 4
...
I'm still alive: 319
I'm still alive: 320
I'm still alive: 321
I'm still alive:
Process finished with exit code -1
为什么进程不能立即停止?
是否有其他方法可以强制立即停止?
编辑
刚试过了 idea 14.1.5。进程会立即停止,如预期。看来这个问题是在2016年引入的一个bug。