• 技术文章 >后端开发 >Python教程

    python 多进程通信模块的简单实现

    2016-06-16 08:45:09原创466
    多进程通信方法好多,不一而数。刚才试python封装好嘅多进程通信模块 multiprocessing.connection。

    简单测试咗一下,效率还可以,应该系对socket封装,效率可以达到4krps,可以满足好多方面嘅需求啦。

    附代码如下:

    client

    复制代码 代码如下:


    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    """ download - slave
    """
    __author__ = 'Zagfai'
    __license__ = 'MIT@2014-02'

    import webtul
    from multiprocessing.connection import Client

    a = 0
    try:
    while True:
    a += 1
    address = ('10.33.41.112', 6666)
    conn = Client(address, authkey='hellokey')
    #print conn.recv()
    d = conn.recv()
    conn.close()
    except:
    pass

    print a

    server

    复制代码 代码如下:


    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    """ downloader - master server
    """
    __author__ = 'Zagfai'
    __license__ = 'MIT@2014-02'

    import webtul
    from multiprocessing.connection import Listener
    from threading import Thread


    def listener():
    address = ('10.33.41.112', 6666)
    listener = Listener(address, backlog=100, authkey='hellokey')
    while True:
    conn = listener.accept()
    #print 'connection accepted from', listener.last_accepted
    try:
    conn.send({'1':2, '2':'abc'})
    except Exception, e:
    print e
    finally:
    conn.close()
    listener.close()

    listener_th = Thread(target=listener)
    listener_th.daemon = True
    listener_th.start()
    listener_th.join(timeout=20)

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• Python编码规范知识点整理• 完全掌握Python自动操作GUI之PyAutoGUI• 一文搞懂python中Tkinter的使用• 聊聊利用python怎么读取mat文件内容(matlab数据)• Python可视化总结之matplotlib.pyplot基本参数详解
    1/1

    PHP中文网