Share via


Domínios de aplicativo (C# e Visual Basic)

Domínios de aplicativos fornecem um método seguro e flexível de isolar aplicativos em execução.

Domínios de aplicativo são geralmente criados e manipulados por hosts de tempo de execução. Ocasionalmente, talvez você queira que seu aplicativo para interagir programaticamente com os seus domínios de aplicativo, por exemplo, para descarregar um componente sem interromper a execução do seu aplicativo.

Domínios de aplicativo auxiliam a segurança, separar aplicativos de si e uns dos outros dados. Um único processo pode executar vários domínios de aplicativo, com o mesmo nível de isolamento que deve existir em processos separados. Execução de vários aplicativos em um único processo aumenta a escalabilidade do servidor.

No exemplo de código a seguir, você cria um novo domínio de aplicativo e, em seguida, carregar e executar um assembly compilado anteriormente, HelloWorld.exe, ou seja armazenado na unidade c.

' Create an Application Domain:
Dim newDomain As System.AppDomain = System.AppDomain.CreateDomain("NewApplicationDomain")

' Load and execute an assembly:
newDomain.ExecuteAssembly("c:\HelloWorld.exe")

' Unload the application domain:
System.AppDomain.Unload(newDomain)
// Create an Application Domain:
System.AppDomain newDomain = System.AppDomain.CreateDomain("NewApplicationDomain");

// Load and execute an assembly:
newDomain.ExecuteAssembly(@"c:\HelloWorld.exe");

// Unload the application domain:
System.AppDomain.Unload(newDomain);

Visão Geral Sobre Domínios de Aplicativos

Domínios de aplicativo têm as seguintes propriedades:

  • Um assembly deve ser carregado em um domínio de aplicativo, antes que ele pode ser executado. Para obter mais informações, consulte Assemblies e o Cache Global de assemblies (C# e Visual Basic).

  • Falhas em um domínio do aplicativo não podem afetar outros códigos em execução em outro domínio de aplicativo.

  • Aplicativos individuais podem ser interrompidos e o código foi descarregado sem interromper o processo inteiro. Você não pode descarregar assemblies individuais ou tipos, domínios de aplicativo somente inteiro.

Seções relacionadas

Consulte também

Conceitos

Guia de programação do C#

Assemblies e o Cache Global de assemblies (C# e Visual Basic)

Outros recursos

Guia de programação de Visual Basic

Domínios de aplicativo

Programando com Assemblies e domínios de aplicativo