到底是什麼它,你需要知道或不理解?
- W3WP.EXE是過程IIS使用在
- 程序池運行一個應用程序池是IIS的概念,在.net中不存在
- 每個網站的應用程序在運行自己的AppDomain
- AppPools在同一進程內部運行多個網站應用程序
- AppDomain是一個.Net概念,它涉及代碼在應用程序內執行的方式,日記等等。
- 來自MSDN:表示應用程序域,它是應用程序執行的獨立環境。
- 您可以在同一個進程中擁有許多AppDomain,但AppDomain不能跨越不同的進程。
- 代碼在一個AppDomain中可以創建新的應用程序域
- 您可以跨AppDomain的邊界通過Remoting與在同一進程中的另一個應用程序域通信,在另一個進程中,甚至在遠程計算機上進行通信
在.net所有代碼具有對應用程序域的內部被執行。如果您在ASP.Net應用程序中託管WCF服務,則WCF服務將與ASP.Net應用程序在相同的AppDomain中運行(請參閱WCF和ASP.Net http://msdn.microsoft.com/en-us/library/aa702682.aspx)。在這種情況下,AppDomain將運行在IIS內部的AppPool中,但是這與.Net無關。
如果您在Windows服務中承載WCF服務,則WCF服務將在由Windows服務創建的AppDomain內運行,此處不涉及任何AppPools。
如果你的執行路徑
- 客戶端請求的ASP。託管在IIS
- 網頁網網頁請求在Windows服務
託管則會有1的應用程序池,1個W3wp.exe進程,1點Windows服務的過程,涉及2個AppDomain的WCF服務。
我不知道你的問題是否與WCF service Appdomain details有任何關係?