1

私はマルチプロセッシングを使用しており、pickle モジュールが Python オブジェクト構造をシリアライズおよびデシリアライズするためのバイナリ プロトコルを実装していることを知っています。

また、整数、リスト、セットなど、どのタイプのデータをピクルできるかを知っています....

しかし、 pick_able ではない他のデータを使用したい場合は、どうすればよいですか?

より正確には、マルチプロセッシングを使用して、ORTools の作成制約を並列化したいと考えています。ブローは私のコードです:

manager = Manager()
constraints = manager.list(range(16))

def constraint_saz():
    "constraint's condition"

# Create the constraints        
for i in range(len(data)):
    constraints[i] = solver.Constraint(1,1)
    p = Process(target=constraint_saz, args=(constraints,i))
    p.start()
    p.join()    

しかし、私はこのエラーが発生しました:

TypeError: can't pickle SwigPyObject objects

この問題を解決するにはどうすればよいですか?

4

1 に答える 1