次のマルチスレッド タスクを実行するパターンを提案してください。
テーブルの行をキャッシュするつもりで、次の 2 つの方法でそれらを見つける必要があります。
- Id (int)別
- キー別 (文字列)
単一の行ストレージを使用し、2 つの辞書を使用して行を効率的に検索したいと考えています。
キャッシュでは、db から各行を読み取ってグローバル ストレージに格納し、キーと ID で両方の辞書に追加する必要があります。このすべてがマルチスレッド環境で機能する必要があります。
誰でもこれを行うためのエレガントな方法を提案できますか?
アップデート。私のせいです。より「一般的な」使用法では、行が別のソース (db ではない) から読み取られると、ロックがデッドロックにつながる可能性があるため、ロックを回避しようとする際の明らかな (自分にとって) 制限を見逃しました...