System.Runtime.Remoting Namespace
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.