In the Common Language Runtime, an application domain is a mechanism used to isolate executed software applications from one another so that they do not affect each other. Each application domain has their own virtual address space which scopes the resources for the application domain using that address space. A Common Language Runtime application domain is contained within an operating system process. A process may contain many application domains.

PropertyValue
dbpprop:abstract
  • In the Common Language Runtime, an application domain is a mechanism used to isolate executed software applications from one another so that they do not affect each other. Each application domain has their own virtual address space which scopes the resources for the application domain using that address space. A Common Language Runtime application domain is contained within an operating system process. A process may contain many application domains. This carries major advantages: There is lower system cost. Multiple threads can exist within a single application domain. The application in a domain can be stopped without affecting the state of another domain in the same process. A fault or exception in one domain does not affect an application in another domain or crash the entire process that hosts the domains. Configuration information is part of a domain's scope, not the scope of the process. Each domain can be assigned different security access levels, all within a single process. Code in one domain cannot directly access code in another (see below). In this sense, the CLR is like a mini-operating system. It runs a single process that contains a number of sub-processes, or application domains. Direct communication cannot be achieved across application domains. However, application domains can still talk to each other by passing objects via marshaling by value (unbound objects), marshaling by reference through a proxy (application-domain-bound objects). There is a third type of object called a context-bound object which can be marshalled by reference across domains and also within the context of its own application domain. Because of the verifiable type-safety of managed code, the CLR can provide fault isolation between domains at a much lower cost than an operating system process can. The static type verification used for isolation does not require the same process switches or hardware ring transitions that an operating system process requires.
  • Домен приложения — часть процесса в . NET. Каждое приложение в Win32 может состоять из одного или нескольких процессов, каждый из которых в свою очередь может порождать один или несколько потоков. В . NET в этой схеме появляется дополнительное звено: каждый процесс приложения . NET может состоять из одного или нескольких доменов приложений, а в рамках домена приложения может работать один или несколько потоков. Домен полностью изолирует используемые в его рамках ресурсы как от других доменов того же процесса так и от доменов других процессов. Один процесс может содержать любое число доменов приложения, каждый из которых полностью изолирован от других доменов приложения в рамках данного процесса (а также любого другого процесса). С учетом этого следует понимать, что приложение, выполняющееся в одном домене приложения, не может получить данные (в частности, значения глобальных переменных или статический полей) другого домена приложения иначе, как с помощью протокола удаленного взаимодействия . NET. Для платформы . NET не предполагается прямого однозначного соответствия между доменами приложения и потоками. Напротив, домен приложения может иметь множество потоков, выполняющихся в рамках этого домена в любой момент времени. Кроме того, конкретный поток не привязан к одному домену приложения в течение всего времени существования потока. Потоки могут пересекать границы домена приложения, подчиняясь правилам потоков Win32 и целесообразности CLR. Но, активные потоки могут перемещаться через границы доменов приложения, в любой конкретный момент времени один конкретный поток может выполняться в рамках только одного домена приложения (другими словами, один поток не может работать в нескольких доменах приложения одновременно).
dbpprop:hasPhotoCollection
dbpprop:reference
rdfs:comment
  • In the Common Language Runtime, an application domain is a mechanism used to isolate executed software applications from one another so that they do not affect each other. Each application domain has their own virtual address space which scopes the resources for the application domain using that address space. A Common Language Runtime application domain is contained within an operating system process. A process may contain many application domains.
  • Домен приложения — часть процесса в . NET. Каждое приложение в Win32 может состоять из одного или нескольких процессов, каждый из которых в свою очередь может порождать один или несколько потоков. В . NET в этой схеме появляется дополнительное звено: каждый процесс приложения .
rdfs:label
  • Application Domain
  • Домен приложения
owl:sameAs
skos:subject
foaf:page
is dbpprop:redirect of