我正在使用 eclipse,当我正常运行它时,我在控制台中看不到打印的语句,但是当我在 Debug模式下运行它时,我看到它。到底是怎么回事? 这种情况仅发生在某些打印语句上(在服务器-客户端学校项目的服务器端,两者都在本地主机上运行)。
private class GameDriver extends Thread {
private Board board;
public GameDriver() {
board = new Board();
}
@Override
public void run() {
boolean twoActivePlayersAlreadyJoined = false;
while (!twoActivePlayersAlreadyJoined) {
twoActivePlayersAlreadyJoined = connector.activePlayers.size() >= 2;
}
System.out.println("Two players already connected, ready to start game");
sendBoardStateToAll();
}
}
最佳答案
Eclipse 调试窗口显示从 Eclipse 实例启动的不同 JVM。
如果您在 Eclipse 中启动多个应用程序,那么调试窗口中也会显示多个 JVM。现在,如果您在调试窗口中选择其中一个 JVM,输出控制台将更改为所选 JVM 的标准输出。
但是,如果没有 Debug模式,Eclipse 仅显示 JVM 控制台的标准输出,该控制台最后打印到标准输出。
关于java - 使用多线程时的标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11278133/