Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Obtém o tamanho de todos os dados personalizados que o host pretende acrescentar às solicitações de E/S.
Sintaxe
HRESULT GetHostOverlappedSize (
[out] DWORD *pcbSize
);
Parâmetros
pcbSize
[out] Um ponteiro para o número de bytes que o CLR (Common Language Runtime) deve alocar além do tamanho do objeto OVERLAPPED do Win32.
Valor Retornado
| HRESULT | Descrição |
|---|---|
| S_OK |
GetHostOverlappedSize retornado com êxito. |
| HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado em um processo, ou o CLR está em um estado no qual não pode executar código gerenciado ou processar a chamada com êxito. |
| HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
| HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
| HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
| E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
Comentários
Todas as chamadas de E/S assíncronas para APIs da Plataforma Windows contêm um objeto OVERLAPPED do Win32, que fornece informações como a posição do ponteiro do arquivo. Para manter o estado, os aplicativos que fazem chamadas de E/S assíncronas normalmente adicionam dados personalizados à estrutura.
GetHostOverlappedSize e IHostIoCompletionManager::InitializeHostOverlapped oferecem uma oportunidade para o host incluir esses dados personalizados.
O CLR chama o método GetHostOverlappedSize para determinar o tamanho dos dados personalizados que o host pretende acrescentar ao objeto OVERLAPPED.
Observação
GetHostOverlappedSize é chamado apenas uma vez. Os dados personalizados do host devem ter o mesmo tamanho para cada solicitação de E/S.
Importante
O tamanho do objeto OVERLAPPED em si não está incluído no valor de pcbSize.
Para saber mais sobre a estrutura OVERLAPPED, confira a documentação da Plataforma Windows.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0