这是我正在尝试的小代码。该程序需要大量时间来执行。在运行时,如果我尝试通过Eclipse中的终止按钮将其终止,它会返回TerminateFailed.我可以使用kill-9从终端杀死它.但是,当我没有在程序的最后一行打印变量结果时(请检查代码的注释部分),程序立即退出。我想知道:为什么打印结果的值时执行需要时间?请注意,如果我不打印value,相同的循环立即结束。为什么eclipse不能杀死程序?更新1:似乎JVM在运行时(而不是在编译时)优化了代码。Thisthread很有帮助。更新2:当我打印value的值时,jstack不管用。仅限jstack-F正在工作中。有什么可能的原因吗?