我正在尝试将池发送到字符串,然后稍后将其关闭以关闭/加入池。这是一个如何复制我正在做的事情的例子:
import multiprocessing
num_of_p = 5
_pool = multiprocessing.Pool(num_of_p)
pool_string = str(_pool)
有没有办法将pool_string
变回multiprocessing.pool.Pool object
?
也许你对python的动态类型有误解。
首先,pool_string
从来不是班级multiprocessing.pool.Pool
的对象
你刚刚调用了its__str__
方法:
>>> pool_string
'<multiprocessing.pool.Pool object at 0x000001F8495BCC18>'
>>> dir(_pool)[26]
'__str__'
>>> _pool.__str__()
'<multiprocessing.pool.Pool object at 0x000001F8495BCC18>'
那是从脚本的开头到结尾的字符串。
也许你只想再提一下你的实际_pool
:
_pool2 = _pool