Java のさまざまなロック モードでのキュー ジャンプの動作分析。

PHPz
リリース: 2023-04-23 09:13:17
転載
1176 人が閲覧しました

1. ReentrantReadWriteLock は公平ロックモードと不公平ロックモードを設定できます。

// 公平锁模式
ReentrantReadWriteLock reentrantReadWriteLock = new ReentrantReadWriteLock(true);
//非公平锁模式 默认情况
ReentrantReadWriteLock reentrantReadWriteLock = new ReentrantReadWriteLock(false);
ログイン後にコピー

公平なロックを取得する前に、readerShouldBlock() メソッドを確認し、書き込みロックを取得する前に、まず WriterShouldBlock() メソッドを確認してから、キューに入れるかキューにジャンプするかを決定します。

2. 不公平なロック モードでは、writerShouldBlock() と ReaderShouldBlock() が実装されています

final boolean writerShouldBlock() {
    return false; // writers can always barge
}
final boolean readerShouldBlock() {
    return apparentlyFirstQueuedIsExclusive();
}
ログイン後にコピー

不公平なロックは、書き込みロックを取得するときにキューをジャンプできます。ロックを読み取るときは、ポリシー決定を使用します。

以上がJava のさまざまなロック モードでのキュー ジャンプの動作分析。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート