如何在其他线程打印时保留当前控制台行

时间:2018-01-22 11:48:47

标签: java multithreading console

假设你有2个帖子。

  • 每隔5秒就会向控制台打印一条消息,比如fooSystem.out.println("foo")
  • 其他读取用户的输入。 bufferedReader.readLine()
  • 然后让我们假设您在第一个帖子打印其消息时正在写作。如何将文本保留为用户当前正在键入的文本,同时仍允许将第一个线程消息打印到控制台?

现在发生了什么:

打字:

>> foo
>> foo 
hello wor

然后第一个线程打印其消息:

>> foo
>> foo 
>> hello worfoo

我想要发生什么:

打字:

>> foo
>> foo 
hello wor

然后第一个线程打印其消息:

>> foo
>> foo 
>> foo
hello wor

我该如何解决这个问题?

我不介意解决方案是否是黑客,这只是一个概念证明。

0 个答案:

没有答案