
了解應用程式網域的變化
https://academic-accelerator.com/encyclopedia/zh/application-domain 公共語言基礎設施 (CLI) 透過使用應用程式網域將正在運行的軟體應用程式彼此隔離。應用程式域是 CLI 中使用的一種機制(類似於作業系統進程),用於將正在運行的軟體應用程式彼此隔離,以便它們不會相互影響。每個應用程式網域都有自己的虛擬位址空間,用於確定應用程式網域資源的範圍。
在 .NET Core 和 .NET 5 中,您無法在相同進程中建立多個應用程式網域。 應用程式域是公共語言基礎設施 (CLI) 中使用的一種機制(類似於作業系統進程),用於將正在運行的軟體應用程式彼此隔離,以便它們不會相互影響。每個應用程式網域都有自己的虛擬位址空間,用於確定應用程式網域資源的範圍。
應用程式領域和進程之間的主要區別在於,應用程式領域在公共語言基礎設施 (CLI) 中用於將正在運行的軟體應用程式彼此隔離,以便它們不會相互影響。 在同一進程中擁有多個應用程式域的優點包括:
1. 隔離性:每個應用程式網域都有自己的虛擬位址空間,用於限定應用程式域的資源範圍。這意味著每個應用程式域與同一進程中的其他應用程式域隔離,防止它們相互幹擾執行。
2.安全性:每個應用程式域都有自己的一組權限,這意味著每個應用程式域可以以與同一進程中的其他應用程式域不同的權限運行。這對於運行具有不同安全要求的應用程式非常有用。 .NET Core 和 .NET 5 透過刪除同一進程中多個應用程式域的概念來處理同一進程中的多個應用程式域。相反,.NET Core 和 .NET 5 對同一進程中運行的所有應用程式使用單一應用程式域。這意味著在同一進程中運行的所有應用程式共享相同的虛擬位址空間,該空間用於確定應用程式域資源的範圍。
刪除同一進程中多個應用程式域的概念是對 .NET Core 和 . 無法在 .NET Core 和 .NET 5 中的相同進程中建立多個應用程式域的影響如下:
1. **失去隔離**:同一進程中沒有多個應用程式域,應用程式之間就會失去隔離。這意味著一個應用程式可以影響同一進程中另一個應用程式的行為。
2. **記憶體消耗增加**:同一進程中沒有多個應用程式域,記憶體消耗會增加。
