3

Web アプリケーションを使用する asp.net Web サイトがあり、それらは両方とも同じアプリケーション プール (1 つのワーカー プロセス) にあります。Web サイトの web.config ファイルに読み込まれた httpmodule があり、興味深いことに、メインの Web サイトとアプリケーションの両方が httpmodule の個別のインスタンスによって提供されます。どうしてこれなの?それらは同じプロセスにあるため、1 つのインスタンスを使用する必要があるようです。

また、アプリケーションで静的変数を使用しようとすると、asp.net Web サイトとは異なるオブジェクトを指します。それらは同じプロセスにあるため、以前と同じ質問です。それらは同じオブジェクトであってはなりませんか、または.netはプロセス内に何らかの境界を課しますか?

4

1 に答える 1

3

IISは、アプリケーションごとに個別のAppDomainを作成します。これらのAppDomainは、同じオペレーティングシステムプロセス内に存在しますが、マネージコードの観点からは別個のプロセスのように扱うことができます。つまり、ロードされたアセンブリ、メモリなどを共有しません。

http://www.odetocode.com/articles/305.aspx http://weblogs.asp.net/owscott/archive/2007/09/02/application-vs-appdomain.aspx http://msdn.microsoft。 com / en-us / library / system.appdomain(VS.85).aspx

于 2009-03-03T19:03:03.383 に答える