Alkalmazási tartomány

Az alkalmazástartomány egy olyan .NET  -ben megvalósított mechanizmus, amely lehetővé teszi alkalmazások egy csoportjának egyetlen folyamatban történő futtatását , relatív elkülönítést biztosítva számukra egymástól, ugyanakkor lehetővé teszi számukra, hogy sokkal gyorsabban kommunikáljanak egymással, mint a külön folyamatok esetén. A Win32-ben minden alkalmazás egy vagy több folyamatból állhat, amelyek mindegyike egy vagy több szálat hozhat létre , így a nem felügyelt kód esetében a sandbox egyedül a folyamat, míg a .NET-ben a sandbox az alkalmazástartomány.

A tartomány teljesen elszigeteli a benne használt erőforrásokat ugyanazon folyamat többi tartományától.

Egyetlen folyamat tetszőleges számú alkalmazási tartományt tartalmazhat, amelyek mindegyike teljesen elkülönítve van a folyamaton belüli többi alkalmazástartománytól (valamint bármely más folyamattól). Ezt szem előtt tartva meg kell érteni, hogy egy alkalmazástartományban futó alkalmazás csak a .NET távoli protokoll használatával szerezhet be adatokat (különösen a globális változók vagy statikus mezők értékeit) egy másik alkalmazástartományból. A .NET platform nem feltételez közvetlen egy az egyhez megfelelést az alkalmazástartományok és -szálak között. Ezzel szemben egy alkalmazástartományban bármikor több szál futhat a tartományon belül. Ezenkívül egy adott szál nincs egyetlen alkalmazástartományhoz kötve a szál élettartama alatt. A szálak átléphetik az alkalmazástartomány határait, a Win32 szálszabályaitól és a CLR célszerűségétől függően. De míg az aktív szálak áthaladhatnak az alkalmazástartomány határain, egy adott szál egy adott időpontban csak egy alkalmazástartományon belül futhat (más szóval, egy szál nem futhat egyszerre több alkalmazástartományban).

Irodalom