Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python多处理中跨进程共享锁列表_Python_Selenium Webdriver_Locking_Multiprocessing_Python Multiprocessing - Fatal编程技术网

在python多处理中跨进程共享锁列表

在python多处理中跨进程共享锁列表,python,selenium-webdriver,locking,multiprocessing,python-multiprocessing,Python,Selenium Webdriver,Locking,Multiprocessing,Python Multiprocessing,我正在从事一个项目,该项目共享chrome浏览器,并开始在多个进程中使用selenium包。由于这些浏览器(存储为列表对象)是使用Manager.list()在进程之间共享的,因此我还希望在进程之间共享Manager.Lock()的相应列表,以便进程在通过浏览器访问URL之前在浏览器上获得Lock。但是,在示例代码中,我得到了有关锁的序列化的错误,如下所示: >>> from multiprocessing import Manager >>> manager

我正在从事一个项目,该项目共享
chrome浏览器
,并开始在多个进程中使用
selenium包
。由于这些浏览器(存储为列表对象)是使用
Manager.list()
在进程之间共享的,因此我还希望在进程之间共享
Manager.Lock()
的相应列表,以便进程在通过浏览器访问URL之前在浏览器上获得
Lock
。但是,在示例代码中,我得到了有关锁的序列化的错误,如下所示:

>>> from multiprocessing import Manager
>>> manager = Manager()
>>> lock_list = manager.list()
>>> lock_list.append(manager.Lock())
>>> print type(lock_list[0])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 2, in __getitem__
  File "/usr/lib/python2.7/multiprocessing/managers.py", line 774, in _callmethod
    raise convert_to_error(kind, result)
multiprocessing.managers.RemoteError: 
---------------------------------------------------------------------------
Unserializable message: ('#RETURN', <thread.lock object at 0x7fa2115452b0>)
---------------------------------------------------------------------------
>>> 
来自多处理导入管理器的
>
>>>经理=经理()
>>>lock_list=manager.list()
>>>lock\u list.append(manager.lock())
>>>打印类型(锁定列表[0])
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“”,第2行,在\uu getitem中__
文件“/usr/lib/python2.7/multiprocessing/managers.py”,第774行,在调用方法中
引发转换为错误(种类、结果)
multiprocessing.managers.RemoteError:
---------------------------------------------------------------------------
不可序列化消息:(“#RETURN”,)
---------------------------------------------------------------------------
>>> 
如果有人能帮我解决这个问题,那就太好了。谢谢