検索

ホームページ  >  に質問  >  本文

java - concurrentHashMap源码中的readValueUnderLock(e)存在的意义?

巴扎黑巴扎黑2834日前916

全員に返信(3)返信します

  • 迷茫

    迷茫2017-04-18 10:06:43

    リーリー

    前の文は、テーブル内にこの key があることを示しています。putvalue の場合、例外がスローされます。 リーリー nullこれは私のバージョンの上位バージョンであり、あなたのバージョンとは異なる可能性がありますが、値を空にすることはできません。

    それで:

    リーリー
    空でない場合は、直接返すことができます。空の場合は、他のスレッドが操作していることを意味します。それで追加しました。

    リーリー

    現在のバージョンの

    メソッドは、

    get のように、HashEntry<K,V> eUNSAFE.getObjectVolatile() に変更して取得します。

    返事
    0
  • 阿神

    阿神2017-04-18 10:06:43

    投稿者は JDK をアップグレードできます。1.8 を使用して検索しましたが、このコードは ConcurrentHashMap で見つかりませんでした。

    返事
    0
  • 怪我咯

    怪我咯2017-04-18 10:06:43

    オブジェクトは初期化時に null になります。この null はプログラム内で特別に割り当てられるわけではありません。

    返事
    0
  • キャンセル返事