序文ウォッチドッグ メカニズムは、RedissonBaseLock#scheduleExpirationRenewal メソッドにあります。このフェアロックとアンフェアロックの間には違いはありません。 前に学んだように、公平なロックが失敗すると、現在のロックは待機キューに配置され、Java コードのループを通じてロックの取得が試行されます。 1. ロック解除アクティブリリース ソースコード: RedissonFairLock#unlockInnerAsync
このロジックのハイライト部分はマークされており、重要なポイントはロックを解除することです。
このようにして、他のスレッドは待機キューからロックを取得し始めます。 タイムアウト削除 ロックのロックと解放を行う Lua スクリプトでは、最初の段落は常に while true do xxx であり、キュー内のタイムアウトしたロックを削除するために使用されます。 ロックを保持しているスレッドの解放は、不正なロックと変わりません。ロックがタイムアウトするか、サービスが停止すると、ロックは自動的に解除されます。 (これは anyLock を指します)。 2. まとめフェアロックの解放もアクティブ解放とタイムアウト解放に分けられます。 アクティブリリース、つまりリリースロックを自分で呼び出します。 タイムアウト削除には 2 種類あります。 1 つは、ロックを保持しているスレッドのタイムアウト削除です。このロックにもタイムアウト期間 + ウォッチドッグの更新が含まれているため、これは不公平なロックと変わりません。もう 1 つは、キュー内でタイムアウト削除を待機することです。毎回ロックを取得する前に、最初の待機スレッドのタイムスタンプがタイムアウトしたかどうかを判断し、ロックを解除する必要があります。 この記事はWeChatの公開アカウント「Programmer Xiaohang」から転載したもので、以下のQRコードからフォローできます。この記事を転載する場合は、プログラマーXiaohangの公式アカウントまでご連絡ください。 |
<<: クラウド ネイティブ 2.0: 今検討すべき 3 つの DevOps 戦略
>>: OpenHarmony 分散ソフトバスプロセス分析 v1.0丨2。ソフトバスを開いて接続を確立する
SEO最適化の詳細について記事を書こうと思います。なぜなら、SEOは細部から始めるべきだとよく言われ...
みなさんこんにちは。私は上海出身の劉波です。今日はオンライン販売の経験を皆さんと共有できることをとて...
PR は、すべてのウェブマスターにとって消えることのないコンプレックスであると言えます。 PR は、...
今年3月、江蘇省高郵警察は大規模なオンライン求人詐欺事件を摘発し、容疑者12人を逮捕した。被害者は全...
新華網、北京、3月30日(新華社) - 中国サイバースペース管理局の報道官は本日、噂を流布する多数の...
私は SEO の初心者で、SEO の複雑さを理解し始めたばかりです。私は SEO は非常に単純なもの...
記事を書いてタイトルを考えるのは本当に頭の痛い作業です。文章はより技術的であり、堅苦しすぎると思われ...
DNS は、ドメイン ネーム システム (Domain Name System または Domain...
Hostcatは、主に日本の東京(Equinix、COLT)と大阪(Equinix)データセンターで...
テンセントテクノロジーは10月21日、「ワイヤレス分野で実績がなければ、株式公開は考えないほうがいい...
今日はアメリカの独立記念日です。Ramnode は VPS プロモーションで 38% 割引を提供して...
店内のサロンを見逃してしまったことを残念に思うお客様が多すぎました!ウェイターは、秋馬サロンでのスピ...
周知のとおり、小米は創業当初から数量限定で製品を販売してきました。諺にあるように、「希少性は価値を生...
最近、dmitにいくつかの変化がありました。最も重要なのは、香港データセンターがアップグレードされ、...
[51CTO.com からのオリジナル記事] Parallels が昨年 9 月に Parallel...