Pythonでの簡単なスレッド並列化

今まで,Pythonでの並列処理はmultiprocessingを使ったマルチプロセスのプロセスプールでやっていて,スレッドプールはないのかー?と思っていたが,
Python 3系には concurrent.future というモジュールがあった.
これの ThreadPoolExecutor をいうのを使うと,

from concurrent.future import ThreadPoolExecutor
num_threads = 10
executor = ThreadPoolExecutor(num_threads)
results = executor.map(f, values)

という風に,スレッドプールを使った処理が簡単に書けるらしい.

コメントする