multiprocessing.pool.Pool字符串返回对象

时间:2017-11-07 00:26:23

标签: python multiprocessing pool

我尝试将池发送到字符串,然后稍后将其恢复以关闭/加入池。以下是如何复制我正在做的事情的示例:

import multiprocessing

num_of_p = 5
_pool = multiprocessing.Pool(num_of_p)
pool_string = str(_pool)

有没有办法将pool_string变回multiprocessing.pool.Pool object

1 个答案:

答案 0 :(得分:1)

也许你对python的动态类型有误解。

首先,pool_string永远不是班级multiprocessing.pool.Pool

的对象

您刚刚调用了__str__方法:

>>> pool_string
'<multiprocessing.pool.Pool object at 0x000001F8495BCC18>'
>>> dir(_pool)[26]
'__str__'
>>> _pool.__str__()
'<multiprocessing.pool.Pool object at 0x000001F8495BCC18>'

从脚本的开头到结尾都是字符串。

也许您只想对实际的_pool

进行另一次引用
_pool2 = _pool