日期:2014-05-16  浏览次数:20795 次

关于多进程同时接收终端输入的问题
假设系统由3个进程A、B、C组成,相互协作。
        但3个进程各自都需要从终端(键盘)接收输入,而且各个进程处理的键值
有重叠。例如:如果输入‘A’,则肯定由进程A处理,如果输入‘B’,肯定由
进程B来处理;如果输入‘D’,则要根据上下文确定是由A还是B来处理。  
但关键问题是:
        当输入‘A’时,应该有进程A处理,但此时进程A,B,C都有线程试图从键盘
读取,如何保证肯定此时只能由进程A接收到‘A’呢?  


------解决方案--------------------
这样很麻烦哦,不如加一个管理进程M,负责从键盘读入,然后通过管道之类的东西把键盘输入转发给其它进程。