15

挿入および削除操作を実行しているリンクされたブロッキング キューがあります。

putどちらが優れているか、またはofferリンクされたブロッキング キューの場合を知る必要があります。

パフォーマンス パラメータは、CPU 使用率、メモリ、および全体的なスループットです。

アプリケーションの使用法はリアルタイム システムであり、複数の受信リクエストがあり、要素をキューに挿入する必要がある場合に処理するスレッドが少なくなる可能性があります。

put と offer の Java ドキュメントを読んだところ、内部アプリケーションに大きな違いはありませんでした。

4

3 に答える 3

13

実はこの2つの性能を比較することはできませんoffer. キューにオファーするだけで待機しないか、指定された時間だけ待機するput方法ですが、スペースが空くまで無限に待機する方法であるため、使用方法が異なります.

アイテムを失う余裕がない場合に使用putします。コール スタックが保持されることを念頭に置いてください。それ以外の場合は を使用してくださいoffer

于 2013-10-17T06:52:51.977 に答える
1

ドキュメントは、この質問に対する答えを明確にします。オファーは待機せず、キューが容量に達した場合に「放棄」します。ただし、 put はスペースが使用可能になるまで待機します。つまり、スペースが使用可能になるまでブロックします。したがって、オファーはブロックされないため、明らかに高速です。

于 2013-10-17T06:43:27.630 に答える