開発された新しいアプリケーションは、Webサービスを多用しています。私たちは定期的にメモリ使用量の例外を使い始めました(使用量が増えたため)。私が気付いたメモリダンプを見直すと、同じ大きさのバイト[]が多数ありました。これらのバイトのハンドルを見ると、System.Security.Policy.Evidenceによって参照されていることに気付きました。System.Security.Policy.Evidence、Webサービス、LoHの吹き出し
私はこれらのメモリ割り当てを、Webサービスクラスを持つ実際のアセンブリ(dll) (特にアセンブリのうちの2つは128回と115回のメモリにあった)。私はここにいくつかの情報を見つけました - > blogs.msdn.com/tess/archive/2008/06/25/asp-net-memory-leak-byte-arrays-rooted-in-system-security-policy-evidence aspxの
、ここで - > blogs.javista.com/2009/03/18/best-practices-for-crm-memory-usage/
が、私は多くの他の参照を見つけることができませんでしたこの問題に。 (セキュリティポリシをチェックするためにWebサービスアセンブリをメモリにロードする.NETフレームワーク)。
現在のところ、私が見ている唯一の解決策の1つは、ライブラリを参照するより小さなアセンブリにウェブサービスのアサーションを分離することです。
.NETフレームワークがポリシーをチェックするためにアセンブリ全体をメモリにロードして、他の誰かがこの問題に遭遇したか、ソリューションが何であったかを知りたいと思っていたのは混乱します。
おかげで、 ダン