文字列キーからスレッドセーフ クラスへのポインタへのハッシュ マップがあります。このクラスの各オブジェクトには、さまざまなメソッド間で同期するために使用するミューテックスが含まれています。
さらに、しばらく使用されていない値を破棄したい場合もあります。誰も私の値を使用しないようにしながら、値ポインターを安全に削除してハッシュマップから削除できるようにしたいと考えています。
これを達成するための最良の方法は何ですか (一般的に、および C++ で)?
文字列キーからスレッドセーフ クラスへのポインタへのハッシュ マップがあります。このクラスの各オブジェクトには、さまざまなメソッド間で同期するために使用するミューテックスが含まれています。
さらに、しばらく使用されていない値を破棄したい場合もあります。誰も私の値を使用しないようにしながら、値ポインターを安全に削除してハッシュマップから削除できるようにしたいと考えています。
これを達成するための最良の方法は何ですか (一般的に、および C++ で)?
また、 TBB ライブラリからのconcurrent_hash_mapを使用することもできます。アクセサー(ロック付きのスマートポインターのようなもの)を使用して、同時アクセスとその要素の有効期間を保護します