2

操作を読み取り操作 (ルックアップなど) と書き込み操作 (挿入、削除など) に分類できるデータ構造があります。これらの操作は、次のように同期する必要があります。

  • 書き込み操作の実行中に読み取り操作を実行することはできませんが (同じスレッド上でない限り)、読み取り操作は他の読み取り操作と並行して実行できます。
  • 読み取り操作または書き込み操作の実行中に書き込み操作を実行することはできません (同じスレッド上でない限り)。

この種の同期はどのように実装できますか?

プラットフォームは win-api であるため、API の同期オブジェクトと連動機能が基本的なビルディング ブロックです。

4

1 に答える 1

3

Microsoft が推奨するリーダー/ライター ロックの実装は次のとおりです (「リーダー/ライター ロック」ヘッダーまで少しスクロールする必要があります)。

http://msdn.microsoft.com/en-us/library/ms810427.aspx

参考までに、同じ質問をしているが .NET の贅沢を持っている人のために:

http://msdn.microsoft.com/en-us/library/system.threading.readerwriterlock.aspx

于 2009-07-05T15:17:37.783 に答える