首页新闻找找看学习计划

python在Windows系统的分布式进程问题

0
悬赏园豆:50 [已解决问题] 解决于 2019-07-22 01:03

在创建进程过程中,有如下代码:
url_manager=Process(target=url_manager_proc,args=(url))
result_solve=Process(target=result_solve_proc,args=())
store=Process(target=store_proc,args=())
url_manager.start()
result_solve.start()
store.start()

然而因为特殊原因,需要传递对象到url_manager_proc函数中。
但是传递对象导致了PermissionError: [WinError 5] 拒绝访问的错误。

url_manager_proc需要形参为类,而该对象没有办法作为全局变量。

嘘,小点声的主页 嘘,小点声 | 初学一级 | 园豆:97
提问于:2019-06-13 23:45
< >
分享
最佳答案
0

弃用Windows10,改用Linux(Ubuntu18.04)。分布式进程,就应该用Linux好点吧!

嘘,小点声 | 初学一级 |园豆:97 | 2019-07-22 01:01
其他回答(1)
0

你可以将对象 进行序列化(pickle),然后在url_manager_proc 中反序列化。

收获园豆:50
xiaobaiskill | 园豆:1012 (小虾三级) | 2019-06-14 10:01

可是提示了TypeError: Pickling an AuthenticationString object is disallowed for security reasons

支持(0) 反对(0) 嘘,小点声 | 园豆:97 (初学一级) | 2019-06-14 12:27

@白梦伟、: 为什么要传对象呢,可以换一种思路! 传数据呀,再调用对象呀,或者第三方存取数据

支持(0) 反对(0) xiaobaiskill | 园豆:1012 (小虾三级) | 2019-06-27 10:17
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册