ユニークなオブジェクトを同時にバケットにアップロードするスレッドが500以上あります。Javaでの同時データ挿入を処理するクラス
この場合、Javaでバケットを実装するために使用するデータ構造/クラスはどれですか。 FYI
:
私はArrayListに、ベクトル、のConcurrentHashMap、ArrayBlockingQueue、LinkedBlockingQueueを使用してみました。
ArrayListはスレッドセーフではないため、失敗します。 ベクターの挿入に時間がかかります。 (モニターロックを得るまでの待ち時間が多いので)
...最後に、私は他のものと比較してうまく聞こえるArrayBlockingQueueを使用しました。
この場合、他のクラス/データ構造が他に存在する場合は、私にお勧めします。
を使用すると、セットまたはリストは必要ですか?すなわち、データ構造が重複要素を自動的にフィルタリングすべきかどうか?これはデータ構造の重要な違いであり、あなたの質問に答えることが重要です。 –
重複する要素はありません。具体的には私はリストが必要です。 – krishna