>百科大全> 列表
分布式编程教程
时间:2025-04-16 06:06:40
答案

  1、建立队列Queue,用来进行进程间的通信。

    (1)服务进程创建任务队列task_queue,用来作为传递任务给任务进程的通道

    (2)服务进程创建结果队列result_queue,用来作为任务进程完成任务后回复服务进程的通道

  2、把创建的队列在网络注册,暴露给其他进程

    (1)通过multiprocessing.managers.BaseManage.register创建Queue接口来作为添加任务的通道,typeid是调用的方法名,callable是绑定的本地获取Queue的方法

  3、创建一个对象(multiprocessing.managers.BaseManage)的实例manager,绑定端口和验证口令

    (1)通过multiprocessing.managers.BaseManage绑定本地端口,指定authkey,authkey接受bytes类型

  4、启动manager,开始监听信息通道

    (1)manager.start()

  5、通过管理实例的方法(第2步中注册的typeid的参数)获得通过网络访问的Queue对象,即再把网络队列实例化成可以使用的本地队列

    (1)task = manager.get_task_queue()

  6、创建任务到本地队列中,会自动上传到网络队列中,分配给任务进程去处理

    (1)task.put()

推荐
Copyright © 2025 解决知识网 |  琼ICP备2022020623号 |  网站地图