在控制台下如何同时处理用户键盘输入和控制台输出?
我需要设计一个程序,一方面需要接受用户的键盘输入,比如某些按键作为程序的开始、结束或者暂停等,另一方面需要从串口中接收数据并进行处理后输出到控制台中。为了解决这个问题,我采用了ncurses和多线程编程。我使用ncurses设计了三个window,一个用来接收用户输入,一个用来输出信息,另外一个用于显示某些状态信息。而且,我设计了两个进程,一个处理串口数据接收和处理,并输出至其中一个window,另外一个进程接收用户的输入。
现在的问题,两个进程跑起来之后,似乎一个进程不停的往一个window输出信息,从而导致我的用户接收进程得不到cpu从而使得我的键盘输入根本就没有响应。
实在不知道怎么办了?欢迎大家给些意见。 用非阻塞模式或者异步方式.
参考使用 select poll epoll等类似函数
页:
[1]