Rlock
単純なものの代わりに使用する必要がある場合、誰でもコード例を教えてもらえますかlock
Rlock が必要な場合の使用例を見つけることができません
私はこれを読みましたが、それを実際に使用することができませんでした
通常のロック オブジェクトは、同じスレッドであっても複数回取得することはできません。これにより、ロックが同じ呼び出しチェーン内の複数の関数によってアクセスされる場合、望ましくない副作用が発生する可能性があります。
Rlock
単純なものの代わりに使用する必要がある場合、誰でもコード例を教えてもらえますかlock
Rlock が必要な場合の使用例を見つけることができません
私はこれを読みましたが、それを実際に使用することができませんでした
通常のロック オブジェクトは、同じスレッドであっても複数回取得することはできません。これにより、ロックが同じ呼び出しチェーン内の複数の関数によってアクセスされる場合、望ましくない副作用が発生する可能性があります。
これは主に、粒度の粗いロックの問題です (ロックを保持している間、多くの作業を行います)。ロックを複数回取得しようとすると、スレッドはハングします。システムが複雑になり、多くの機能がロックを取得するにつれて、リスクは増大します。関数 f1、f2、... fn がすべてロックを取得するとします。f1 が f2 を呼び出すと、ハングします。f1 が他の関数を呼び出し、その関数が f2 を呼び出すと、ハングします。ロックを取得する関数と機能を実装する関数の 2 つのセットを実装することになります。「outies」と「innies」。RLocks を使用すると、それについてよりリラックスできます。