gpt4 book ai didi

Java 在 Linux 中运行时不会中断一段时间

转载 作者:IT王子 更新时间:2023-10-29 00:44:02 25 4
gpt4 key购买 nike

<分区>

作业中发现了一个Java代码的神秘问题。一位 friend 编写了一个应用程序,开头是这样的:

public void run() {
vm.setVisible(true);
while(!end);
System.out.println("Finish");
vm.setVisible(false);
}

在所有执行过程中以及当用户退出应用程序时, boolean 值“end”为假:

private class CloseSys implements ActionListener {
public CloseSys() {super();}

public void actionPerformed(ActionEvent e) {
System.out.println("CLOSE SYS");
System.out.println("end: "+end);
end = true;
System.out.println("end: "+end);
}
}

println 显示“end”的值在我 friend 的计算机 (MacOS) 中变为 true 并且逻辑上 while finish 和应用程序也是如此。

问题是,在我的计算机(Ubuntu Linux)中,println 也显示值发生变化,但 while 并未结束(从未达到“完成”println)。有趣的是,如果我们将 prints 放入 while 中……然后就可以工作了!

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com