私は、データを処理するスレッドの束を持つプログラムに取り組んでいます。
各スレッドは、次に利用可能な ID を取得し、次のスレッドのためにその ID を 1 ずつ増やし、これをスレッドセーフな方法で行う必要があります。
これはミューテックスを使用するインスタンスですか? 代わりに Queue.Synchronized を使用して、300,000 個の ID をすべて入力する必要がありますか、それとも不要ですか?
単一の整数を使用して、その番号の取得と更新を何とかロックして、thread1 が入ってきて、次の ID として「20」を取得し、別のスレッドが待機している間にそれを「21」にインクリメントする必要がありますか?
このユースケースのベストプラクティスは何ですか?