为什么我的bash输入会在输入之前与我的程序输出混合在一起?

时间:2017-06-11 20:15:26

标签: java multithreading bash

我一直在尝试创建一个监视器java程序,它在同时获取用户输入的同时打印出来自并发线程的一些统计信息。我面临的问题是,如果用户正在编写一个长命令“create file / home / user / etc”,并且并发线程恰好在他的命令中打印出一些消息。他的命令将被削减一半,我知道这不会影响我得到的实际输入,但它会破坏用户界面。

A terminal picture to illustrate the problem 在这张照片中,我试图写“为什么这会一直被打断????”你可以看到会发生什么。

那么如何将命令行与输出分开,以便在将它们保持在同一窗口时不会被中断?

如果相关,我在Putty上使用bash。 我感谢所有的帮助。

1 个答案:

答案 0 :(得分:1)

据我所知,你所做的事情是不可能的。你可以想到几个不同的选择:

1)使用ncurses java库(例如jcurses)。

2)只将数据写入文件。

3)创建一个带有单独输入和输出文本字段/区域的java GUI。