序文Redisson は再入可能な読み取り/書き込みロックもサポートしており、分散シナリオで複数の読み取りロックと 1 つの書き込みロックを同時にロックできます。 1. 読み取り/書き込みロックを使用する Redisson の読み取り/書き込みロックは JUC の下で ReadWriteLock を実装しており、その使用法は基本的に同じです。 2. ソースコードロックのソース コードは基本的に以前の再入可能ロックと同じですが、唯一の違いは Lua スクリプトにあります。 したがって、以下では Lua スクリプトの分析に焦点を当てます。 ロックのソースコードを読む ソースコードアドレス: org.redisson.RedissonReadLock#tryLockInnerAsync パラメータリスト:
最初の読み取りロック
読み取りロックの再入力 再入国の場合:
読書サポート
書き込みと読み取りの相互排除 読み取りロックが追加されました。このとき、書き込みロックが入ります。最初の部分と 2 番目の部分のどちらにも該当しないため、現在のロックの残り時間をそのまま返します。 次に、Java コードで while (true) spin wait を実行します。 上記のように、ロックを読み取るときは次のようになります。
ロックソースコードを書くソースコードアドレス: org.redisson.RedissonWriteLock#tryLockInnerAsync パラメータリスト:
書き込みロックのソースコードは比較的理解しやすいです:
このように、書き込み-書き込み相互排他性と読み取り-書き込み相互排他性が直接満たされ、現在のスレッドが再入できることがわかります。 3. まとめこの時点で、読み取り/書き込みロックの読み取りは基本的に完了です。読み取りロックの実装はやや複雑ですが、書き込みロックは単純かつ明確です。 ロックを読み取るとき:
ロックを書き込む場合:
|
<<: 中国電信がクラウドコンピューティングに投資し、天一クラウドテクノロジー株式会社を設立
>>: Kubernetes 7周年記念:K8s の導入とアプリケーションの簡素化における VMware の成果と課題
この記事の内容: 格安香港VPSサーバーのおすすめ!香港の物価が高いことは誰もが知っています。香港の...
なぜヘルスチェックメカニズムが必要なのでしょうか?ヘルス チェック メカニズムは、サービスの可用性を...
joesdatacenterは2008年からサーバー事業を展開しており、独自のカンザスデータセンター...
近年、「マーケティングを製品中心から消費者・顧客中心に転換する」という理論が、企業の意思決定者の間で...
4Kスマートテレビ市場への参入におけるLeTVの華麗な運営を詳細に分析今日のインターネット時代におい...
[[403519]] 1. 分散コンセンサスアルゴリズム1 分散コンセンサスをどう理解するか?複数の...
この記事では、virmach の割引コードを収集し、それらをすべてリストして、誰もが virmach...
SEO テクニックを習得し、SEO の考え方を柔軟に適用すると、SEO 最適化を自然にビジネスに取り...
工場の可視化により、ダウンタイムの削減と生産効率の向上が期待できます。 PTC は最近、世界的に有名...
2年前、家族のファームステイのウェブサイトのために、SEOについて何も知らない素人から、A5やSEO...
学生の友人など、特にお金をあまりかけたくないけれど、サーバーが安定していて速度が遅すぎないことを特に...
6月26日午後、A5フォーラム(bbs.admin5.com)は正式に「A5トランザクション」に改名...
11月1日から11月30日までのイベント期間中、raksmartクラウドサーバーが30%割引になりま...
最近、ウェブマスターフォーラムでも、ウェブマスターQQグループでも、Baiduランキングが一昨日はホ...
長い間、皆さんとこの話題について議論したいと思っていましたが、話す価値がないといつも思っていましたし...