問題タブ [apache-commons-collection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - FifoBuffer - Apache 共通コレクション 4 置換
apache.commons.collections4 にアップグレードしたいのですが、一部のクラスが削除されCircularFifoBuffer
ますUnboundedFifoBuffer
そのようなクラスの正しい代替品は何ですか?
いくつかの提案が見つかりました :
ヤン・ハデルカ
または、おそらくさらに別のオプションがあります。
バッファーを MinMaxPriorityQueue に置き換えます。これは、それ自体はスレッド セーフではありませんが、guava は幸いにも Queues.synchronizedQueue(Queue q) 呼び出しの形式でスレッド セーフのラッパーを提供します。他の場所ですでにグアバを使用しているため、コモンズの代わりにライブラリを使用しても問題ありません。2つのトーのパフォーマンス比較についてはわかりません。
セドリック・ライヘンバッハ
Queues#synchronizedQueue は確かに BufferUtils#synchronizedBuffer と同等のようです。つまり、含まれているキュー/バッファへのすべてのアクセスを同期します。ただし、CircularFifoBuffer の Guava でのより正確な一致は、おそらく EvictingQueue であるか、または同期ラッパーが任意のキューに対して機能するため、Java 独自の Apache の新しい CircularFifoQueue でさえあります。