mongodb - python运行多线程库pathos时,pymongo递归深度溢出
淡淡烟草味
淡淡烟草味 2017-05-02 09:19:12
[MongoDB讨论组]

版本:pymongo 3.2.2;python 2.7;mongodb 3.0.12;pathos 0.2a1.dev0
在使用pathos的python多线程/进程库时,遇到了如下错误,注释掉“self.db_userinfo_table = MongoClient('localhost',27017).collection.example”这一行,就可以正常运行,如果不注释数据库初始化这一行,“result = ProcessPool(4).map(r.compute, range(100))”这句就会出错,但数据库还没使用呀,仅仅是初始化,难道pymongo本身有bug,还是pathos有bug?

from pathos.pools import ProcessPool, ThreadPool
import logging
from pymongo import MongoClient

class PMPExample(object):
    def __init__(self):
        self.cache = {}
        self.db_userinfo_table  = MongoClient('localhost',27017).collection.example
    def compute(self, x):
        self.cache[x] = x ** 3
        return self.cache[x]

if __name__ == '__main__':
    logging.basicConfig()
    log = logging.getLogger(__name__)
    log.setLevel(logging.INFO)
    r = PMPExample()
    #result = ThreadPool(4).map(r.compute, range(100))
    result = ProcessPool(4).map(r.compute, range(100))
    log.info("result processpooled caches: {}".format(result))
    

出现了好多行同样的错误提示:

淡淡烟草味
淡淡烟草味

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号