小编Aní*_*ñoz的帖子

在java中同时将数据写入控制台printinf信息

我想知道如何控制控制台打印格式.我的问题是我有2个线程,其中一个不断地向控制台输出信息,另一个不断要求用户写信息,但在写入时如果另一个线程打印出来的东西,它会切断用户正在写的短语并分割它.你怎么控制它?

我的线程代码1:

//Definition of variables

while (exit == false) {
    scanner = new Scanner(System.in);
    message = scanner.nextLine();
}

//Code to use user input
Run Code Online (Sandbox Code Playgroud)

我的帖子代码2:

//Definition of variables

while (receive.getExecutingState()) {  
    srvMsg = receive.Receive();
    System.out.println(srvMsg);
}
Run Code Online (Sandbox Code Playgroud)

控制台输出:

No more data to show.
No more data to show.
hNo more data to show.
eNo more data to show.
llo
Run Code Online (Sandbox Code Playgroud)

我希望它在用户写入数据时保持打印消息,但不要分割它正在编写的内容.

提前致谢!

编辑:正如@Thomas所说,我想以更清晰的方式,是保持用户在控制台底部写的文本,其余的都在更新.

java console multithreading println java.util.scanner

5
推荐指数
1
解决办法
803
查看次数