熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

.net中應用程序域的概念

2013-11-13 12:12:27  來源: .NET編程 
  在NET平台下程序集並沒有直接承載在進程中(而傳統的win程序是直接承載的)實際上NET可執行程序承載在進程的一個邏輯分區中術語稱為應用程序域(也稱AppDomain)可見一個進程可以包含多個應用程序域每一個應用程序域中承載一個NET可執行程序這樣的好處如下應用程序域是NET平台操作系統獨立性的關鍵特性這種邏輯分區將不同操作系統加載可執行程序的差異抽象化了
 
  和一個完整的進程相比應用程序域的CPU和內存占用要小的多因此CLR加載和卸載應用程序域比起完整的進程來說也快的多
 
  應用程序域為承載的應用程序提供了深度隔離如果進程中一個應用程序域失敗了其他的應用程序域也能保持正常
 
  AppDomain的主要成員CreateDomain()該靜態方法在當前進程中創建一個新的應用程序域由於CLR能夠根據需要創建應用程序域所以必須調用這個方法的機會很少
 
  GetCurrentThreadId()該靜態方法返回當前應用程序域上活動的線程ID UnLoad()該靜態方法在進程中卸載指定的應用程序域
 
  BaseDirectory獲取基目錄該目錄用於探測相關的程序集
 
  CreateInstance()在指定程序集文件中創建指定類型的新實例
 
  ExecuteAssembly()根據文件名在應用程序域中執行程序集
 
  GetAssemblies()獲取已加載到此應用程序域中的NET程序集(基於COM和C的二進制文件除外)
 
  Load()動態加載程序集到當前應用程序域
From:http://tw.wingwit.com/Article/program/net/201311/15402.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.