背景:ASP.NET MVC 3 Webアプリケーションを作成しています。便利な自動期限切れ機能とスレッドセーフティのために、キャッシュに保持したいオブジェクトのList<MyObject>
(実際にはいくつかのリスト)があります。System.Web.Caching.Cacheはキャッシュからオブジェクトを削除しますか?
これらの各オブジェクトには、内部サーバープッシュの実装に使用されるSystem.Threading.Semaphore
のインスタンスが内部的に含まれています。
私はオブジェクトのライフサイクルをキャッシュに入れれば、どのように変わるのだろうか?キャッシュが/ etcをパージするオブジェクトを実際に処分すると、スレッド/ NullReferenceExceptionsに問題が生じることがありますか?たぶんこれをしないいくつかの他の明らかな理由は?
TIA。
答えをありがとう!今私はもう少し快適に感じます。私はライフサイクルを延長する気にしない - これは私のためにこのソリューションのためのポイントを追加することさえできます。最近の回答がもう表示されない場合、私はあなたの答えを受け入れるでしょう。 –
削除コールバックメソッドを指定することにより、必要に応じてオブジェクトを破棄することができます。 – Rozwel
@Rozwel:ありがとう、私はそれを理解しています。オブジェクトが自動的に削除されないようにすることができます。 –