pathos ProcessPool を使用しdata()
て、多数のデータ ポイントに対して関数を並列に実行するスクリプトがあります。
呼び出された関数はdata()
、結果を計算して、呼び出された単一のオブジェクトに送信しますDatabase
。多くのプッシュがデータベースに送信されるため、単純なキューを追加しました。キューのサイズが 500 を超えると、データベースにプッシュされます。
この問題は、すべてのデータ ポイントがマップされたが、クラスのキューにまだデータが残っている場合に発生しますDatabase
(各プロセスで、プロセス 1 は 100 個、プロセス 2 は 200 個である可能性があります)。
終了時にフラッシュする関数を作成しましたが、すべてのプロセスでその関数を呼び出すにはどうすればよいですか?