私は18Gbのpickleファイルを持っていますが、これはプロセス間でアクセスする必要があります。私はどのように大規模な読み取り専用辞書を共有する/マルチプロセスのプロセス全体のリストをPythonで?
from multiprocessing import Manager
import cPickle as pkl
manager = Manager()
data = manager.dict(pkl.load(open("xyz.pkl","rb")))
を使用してみましたが、私は次の問題を取得しています:
IOError: [Errno 11] Resource temporarily unavailable
誰かがそれが原因でソケットタイムアウトのかもしれない示唆したが、タイムアウトを増やすと、それはそれのようには思えない助けにはなりませんでした。 これについてどうすればいいですか?プロセス間でデータを共有する他の効率的な方法はありますか?
'cPickle'?あなたはPython 2を使用していますか?多分あなたはpython 3で試してみることができます。 –
私はmanager.dictなしでpickleファイルを読み込めます。だから、それが問題なのかどうかは疑問だ –