Compartilhar via


System.Runtime.Remoting Namespace

Fornece classes e interfaces que permitem que os desenvolvedores criem e configurem aplicativos distribuídos. Algumas das classes mais importantes do System.Runtime.Remoting namespace são a RemotingConfiguration classe, a RemotingServices classe e a ObjRef classe.

Classes

Nome Description
ActivatedClientTypeEntry

Contém valores para um tipo de objeto registrado na extremidade do cliente como um tipo que pode ser ativado no servidor.

ActivatedServiceTypeEntry

Contém valores para um tipo de objeto registrado na extremidade do serviço como um que pode ser ativado sob solicitação de um cliente.

InternalRemotingServices

Define métodos de utilitário para uso pela infraestrutura de comunicação remota do .NET Framework.

ObjectHandle

Encapsula referências de objeto marshal-by-value, permitindo que elas sejam retornadas por meio de uma indireção.

ObjRef

Armazena todas as informações relevantes necessárias para gerar um proxy para se comunicar com um objeto remoto.

RemotingConfiguration

Fornece vários métodos estáticos para configurar a infraestrutura de comunicação remota.

RemotingException

A exceção gerada quando algo deu errado durante a comunicação remota.

RemotingServices

Fornece vários métodos para usar e publicar objetos e proxies remotos. Essa classe não pode ser herdada.

RemotingTimeoutException

A exceção gerada quando o servidor ou o cliente não podem ser atingidos por um período de tempo especificado anteriormente.

ServerException

A exceção gerada para comunicar erros ao cliente quando o cliente se conecta a aplicativos não .NET Framework que não podem gerar exceções.

SoapServices

Fornece vários métodos para usar e publicar objetos remotos no formato SOAP.

TypeEntry

Implementa uma classe base que contém as informações de configuração usadas para ativar uma instância de um tipo remoto.

WellKnownClientTypeEntry

Contém valores para um tipo de objeto registrado no cliente como um tipo ativado pelo servidor (chamada única ou singleton).

WellKnownServiceTypeEntry

Contém valores para um tipo de objeto registrado na extremidade do serviço como um objeto de tipo ativado pelo servidor (chamada única ou singleton).

Interfaces

Nome Description
IChannelInfo

Fornece informações de canal personalizadas que são carregadas junto com o ObjRef.

IEnvoyInfo

Fornece informações do enviado.

IObjectHandle

Define a interface para desembrulhar objetos marshal-by-value de indireção.

IRemotingTypeInfo

Fornece informações de tipo para um objeto.

Enumerações

Nome Description
CustomErrorsModes

Especifica como os erros personalizados são tratados.

WellKnownObjectMode

Define como objetos conhecidos são ativados.

Comentários

A RemotingConfiguration classe contém métodos estáticos para interfiguração com configurações. O RemotingConfiguration.Configure método permite que os desenvolvedores configurem a infraestrutura de comunicação remota por meio do uso de arquivos de configuração formatados XML. A RemotingConfiguration classe também contém vários métodos para registro de fim de cliente e servidor de objetos ativados por cliente e servidor que residem no servidor.

A RemotingServices classe fornece uma série de métodos para ajudar a usar e publicar objetos remotos. O RemotingServices.Marshal método fornece a funcionalidade para armazenar todas as informações relevantes necessárias para ativar e se comunicar com um objeto remoto em uma instância da ObjRef classe para serialização e transmissão posteriores para um local remoto. O RemotingServices.Unmarshal método reverte esse processo, criando um proxy para um objeto remoto que pode ser usado por um aplicativo sem considerar as subdivisões de comunicação remota.

A ObjRef classe contém todas as informações relevantes necessárias para ativar e se comunicar com um objeto remoto. Essa classe é uma representação serializável de um objeto que é transmitido para um local remoto usando um canal, onde ele não é gravado (veja Unmarshal) e pode ser usado para criar um proxy local do objeto remoto.

Observação

Os MBRs (objetos marshal-by-reference) não residem na memória para sempre. Em vez disso, a menos que o tipo substitua MarshalByRefObject.InitializeLifetimeService para controlar suas próprias políticas de tempo de vida, cada MBR tem um tempo de vida finito antes que o sistema de comunicação remota do .NET Framework inicie o processo de excluí-lo e recuperar a memória.