私は過去にスレッド化をあまり行っていません。それがどのように機能するかについての私の仮定は次のとおりです。
n スレッドを開始する
スレッドが終了したら、新しいスレッドを開始し、既存のスレッドを強制終了します。これは適切ですか?
私はPythonで作業しているので、スレッドのメインメソッドが死ぬ前に新しいインスタンスを作成するつもりです。これが安全かどうかは完全にはわかりません。何かアドバイス?
私は過去にスレッド化をあまり行っていません。それがどのように機能するかについての私の仮定は次のとおりです。
n スレッドを開始する
スレッドが終了したら、新しいスレッドを開始し、既存のスレッドを強制終了します。これは適切ですか?
私はPythonで作業しているので、スレッドのメインメソッドが死ぬ前に新しいインスタンスを作成するつもりです。これが安全かどうかは完全にはわかりません。何かアドバイス?
生産者と消費者の問題を調べることから始めるのが良いでしょう. これには、1 つの固定サイズのキューを操作する 2 つの異なる関数が含まれます。もちろん、この問題には複数の解決策がありますが、これを処理する一般的な方法は、セマフォとミューテックスを使用することです。これらはバイナリ セマフォにすぎず、クリティカル セクション、つまりキューを操作する関数を本質的にロックおよびロック解除します。例としてこれを念頭に置いて、各関数 (この例ではプロデューサー関数とコンシューマー関数) に対して n 個のスレッドを作成します。次に、プロデューサー関数内で、キューが空のときにロックを解除し、キューが満杯。コンシューマー関数内では、キューがいっぱいになるとロックが解除され、キューが空になるとロックされるセマフォで囲まれたミューテックス ロックで囲まれた getItem() 呼び出しが行われます。ウィキペディアのページに目を通すことをお勧めします。POSIXは C で pthreads を実行しますが、概念はそこにあります。次に、準備ができたら、Python で学んだことを適用し、スレッド化に関するドキュメントを確認してください。