首页 > 系统管理 > 进程中通信(四)—CS架构
2015
11-20

进程中通信(四)—CS架构

     使用Queue方式实现一个简单的CS架构系统,读取客户端输入,并将数据保存到文件中,并在Server端回显。

实现此功能的思路:

1:创建消息队列

2、创建子进程

3、子进程读取输入并放到消息队列中

4、父进程读取并处理消息

#coding=utf8
import os
from multiprocessing import Queue,Process,Lock
import time
Qmsg = Queue()


def Children_func(name):
        while True:
                msg = Qmsg.get()
                print "\033[31m get msg =  %s \033[0m" % msg
                if msg == 'q':
                        break
                time.sleep(3)
                print '\033[33m  %s finish \033[0m' % msg


p = Process(target=Children_func, args=(1,))
p.start()
while True:
        msg = raw_input('>>')
        Qmsg.put(msg)
        if msg == 'q':
                break
p.join()

执行结果

1.png

当连着输入2345的时候,数据就存放到队列中,子进程就会按照顺序执行了。




最后编辑:
作者:tshare365
这个作者貌似有点懒,什么都没有留下。
捐 赠您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击

留下一个回复