国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python - 當(dāng)裝飾器遇到multiprocessing, 出了點(diǎn)bug.

瀏覽:115日期:2022-08-12 14:24:21

問題描述

from multiprocessing import Pooldef with_app_context(need_new=False): def magic(func):app_store = {}def wrapper(*args, **kwargs): print ’inside’, args, kwargs result = func(*args, **kwargs) return resultreturn wrapper return magic@with_app_context(need_new=True)def func(k1, k2): print k1, k2 return ’ret’pool = Pool(processes=1)pool.apply_async(func, args=(’hi’, ’yo’))pool.close()pool.join()

什么結(jié)果都不輸出, 請問哪有bug?

問題解答

回答1:

似乎是這個原因,函數(shù)裝飾器不可pickle 可以看看這個:裝飾器與多進(jìn)程以及Pickle

擴(kuò)展: Python MultiProcessing 使用心得

回答2:

我已經(jīng)找到原因了:

Traceback (most recent call last): File 'wrapper.py', line 30, in <module> print ret.get() File '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/pool.py', line 567, in get raise self._valuecPickle.PicklingError: Can’t pickle <type ’function’>: attribute lookup __builtin__.function failed

子進(jìn)程異常.

回答3:

http://stackoverflow.com/ques...

標(biāo)簽: Python 編程
主站蜘蛛池模板: 阿克陶县| 晴隆县| 晋中市| 英吉沙县| 巨鹿县| 无极县| 凤台县| 莲花县| 克什克腾旗| 张家川| 万州区| 连平县| 申扎县| 昌图县| 孟津县| 始兴县| 肥城市| 蓬安县| 蒙山县| 抚州市| 神农架林区| 九江县| 图们市| 新河县| 嫩江县| 芦山县| 昭觉县| 府谷县| 昭平县| 平度市| 华容县| 金乡县| 阜南县| 金乡县| 秀山| 彭阳县| 桃园市| 班戈县| 孝感市| 闽侯县| 吐鲁番市|