5
用下面的代码使得:'集合' 的对象不是在pymongo可调用错误与处理池
'Collection' object is not callable. If you meant to call the '__getnewargs__' method on a 'Collection' object it is failing because no such method exists.
的代码: 从多处理进口普尔 分贝= MongoClient(IP,端口)
def f(cursor, arg):
for doc in cursor:
...
p = Pool(4)
for arg in args:
cursor = db[dbName][collName].find()
p.apply_async(f,[cursor, arg])
db.close()
找不出什么问题以及如何调试代码。
完全回溯:
Exception in thread Thread-2:
Traceback (most recent call last):
File "C:\Python27\lib\threading.py", line 808, in __bootstrap_inner
self.run()
File "C:\Python27\lib\threading.py", line 761, in run
self.__target(*self.__args, **self.__kwargs)
File "C:\Python27\lib\multiprocessing\pool.py", line 342, in _handle_tasks
put(task)
File "C:\Python27\lib\site-packages\pymongo\collection.py", line 1489, in __call__
self.__name.split(".")[-1])
TypeError: 'Collection' object is not callable. If you meant to call the '__getnewargs__' method on a 'Collection' object it is failing because no such method exists.
在克隆光标线程之前显式拉文件错误发生在哪一行? –
已更新为完整回溯 – user1264304
是从最高级'multiprocessing'软件包,还是从其他模块(如'multiprocessing.dummy'或pymongo中的某个模块)导入'Pool'? – Blckknght