Домены приложений
Программные потоки .NET работают в так называемых доменах приложений, определяемых в документации как "изолированная среда, в которой выполняется приложение". Домен приложения можно рассматривать как облегченный вариант процессов Win32; один процесс Win32 может содержать несколько доменов приложений.
Главное отличие между доменами приложений и процессами заключается в том, что процесс Win32 обладает самостоятельным адресным пространством (в документации домены приложений также сравниваются с логическими процессами, работающими внутри физического процесса). В .NET все управление памятью осуществляется исполнительной средой, поэтому в одном процессе Win32 могут работать несколько доменов приложений. Одним из преимуществ этой схемы является улучшение возможностей масштабирования (scaling) приложений. Средства для работы с доменами приложений находятся в классе AppDomain.
Рекомендуем изучить документацию по этому классу. С его помощью можно получить информацию об окружении, в котором работает ваша программа. В частности, класс AppDomain применяется при выполнении рефлексии для системных классов .NET. Следующая программа выводит список загруженных сборок.
Imports System.Reflection Module Modulel Sub Main() Dim theDomain As AppDomain theDomain = AppDomain.CurrentDomain Dim Assemblies()As [Assembly ] Assemblies = theDomain.GetAssemblies Dim anAssemblyxAs [Assembly ] For Each anAssembly In Assemblies Console.WriteLinetanAssembly.Full Name) Next Console.ReadLine() End Sub End Module