• python中的BaseManager通信(一)文件三分


    可以在windows下单机运行

    主部分(提供服务器)

    1 #mainfirst.py
    2 from multiprocessing.managers import BaseManager
    3 import Queue
    4 queue = Queue.Queue()
    5 class QueueManager(BaseManager): pass
    6 QueueManager.register('get_queue', callable=lambda:queue)
    7 m = QueueManager(address=('127.0.0.1', 50000), authkey='abc')
    8 s = m.get_server()
    9 s.serve_forever()

    发送信号部分(发送)

    1 #subfirst.py
    2 from multiprocessing.managers import BaseManager
    3 class QueueManager(BaseManager): pass
    4 QueueManager.register('get_queue')
    5 m = QueueManager(address=('127.0.0.1', 50000), authkey='abc')
    6 m.connect()
    7 queue = m.get_queue()
    8 queue.put('hello')

    接收信号部分(接收)

    #subsec.py
    from multiprocessing.managers import BaseManager
    class QueueManager(BaseManager): pass
    QueueManager.register('get_queue')
    m = QueueManager(address=('127.0.0.1', 50000), authkey='abc')
    m.connect()
    queue = m.get_queue()
    print queue.get()
    print m.address

    结果:

    hello
    ('127.0.0.1', 50000)

    运行时:不能关掉主部分(提供服务)。发送与接收无所谓先后。

    还有一章是python中的BaseManager通信(二)文件三分。提供服务部分。对本章的发送,接收部分一样有效

  • 相关阅读:
    项目部署工具之walle
    Windows下的终端工具-Terminal
    golang之基础语法
    git之常见问题
    vue之项目部署
    技术电子书汇总
    clickhouse之安装与基本使用
    nginx配置之Gzip压缩
    Selenium登录验证码解决方案细解
    Python Selenium自动化测试PO设计模式实战
  • 原文地址:https://www.cnblogs.com/liunnis/p/4614947.html
Copyright © 2020-2023  润新知