futures バックポート パッケージを使用して、Python で ThreadPoolExecutor を使用しようとしています。ただし、問題は、すべてのスレッドが同時に実行されるため、実際のプーリングが行われないことです。より具体的には、5 つではなく、その関数の 10 スレッドを取得し、次に他のスレッドを取得します。私は次のコードを使用していますが、何か間違っていると思いますか、それとも単にバックポートされた実装ですか? ありがとうございました!
with ThreadPoolExecutor(max_workers=5) as executor:
futures = [executor.submit(f, X, y) for t in range(10)]
for future in as_completed(futures):
self.trees.append(future.result())