最終更新:2021-02-17 (水) 08:53:18 (1164d)
Python/multiprocessing.pool.Pool
ジョブを送り込めるワーカープロセスのプールを制御
class multiprocessing.pool.Pool([processes[, initializer[, initargs[, maxtasksperchild[, context]]]]])
https://docs.python.org/ja/3/library/multiprocessing.html#multiprocessing.pool.Pool
引数
- processes は使用するワーカープロセスの数です。processes が None の場合 os.cpu_count() が返す値を使用します
- initializer が None ではない場合、各ワーカープロセスは開始時に initializer(*initargs) を呼び出します
メソッド
apply(func[, args[, kwds]])
- 引数 args とキーワード引数 kwds を伴って func を呼びます
apply_async(func[, args[, kwds[, callback[, error_callback]]]])
- A variant of the apply() method which returns a AsyncResult object.
map(func, iterable[, chunksize])
- A parallel equivalent of the map() built-in function
- このメソッドはイテラブルをいくつものチャンクに分割し、プロセスプールにそれぞれ独立したタスクとして送ります
メモ
- multiprocessing.pool.Pool のサンプルはインタラクティブシェル上では動作しない