Singleton クラスと同様に、クラスの最大 5 つのインスタンスを作成できる Fiveton クラスを作成したいと考えています。さまざまなスレッドがこのクラスのインスタンスにアクセスしようとしています (したがって、getInstance メソッドを提供する必要があります)。ただし、クラスは重いため、インスタンスを積極的に作成しないでください。つまり、オンデマンドで作成してください。
また、スレッドはラウンド ロビン方式でインスタンスが割り当てられるという契約もあります。つまり、スレッド 1、6、11 は Fiveton オブジェクトのインスタンス 1 を取得します。インスタンスがスレッドによって使用されている場合、それらはロックを待機します (スレッド 6 と 11 がインスタンス 1 を待機し、スレッド 11 がそれを取得する可能性がありますが、スレッド 11 がインスタンス 2 を取得することはありません)。同様に、スレッド番号。2、7、12 はインスタンス 2 を取得する必要があります。