IHostIoCompletionManager::GetHostOverlappedSize (Método)
Obtiene el tamaño de los datos personalizados que el host pretende anexar a las solicitudes de E/S.
HRESULT GetHostOverlappedSize (
[out] DWORD *pcbSize
);
Parámetros
- pcbSize
[out] Puntero al número de bytes que Common Language Runtime (CLR) debe asignar además del tamaño del objeto OVERLAPPED de Win32.
Valor devuelto
HRESULT |
Descripción |
---|---|
S_OK |
GetHostOverlappedSize finalizó correctamente. |
HOST_E_CLRNOTAVAILABLE |
CLR no se ha cargado en un proceso o está en un estado en el que no puede ejecutar el código administrado o procesar la llamada correctamente. |
HOST_E_TIMEOUT |
Se agotó el tiempo de espera de la llamada. |
HOST_E_NOT_OWNER |
El llamador no posee el bloqueo. |
HOST_E_ABANDONED |
Se canceló un evento mientras una fibra o un subproceso bloqueado estaba esperándole. |
E_FAIL |
Se ha producido un error catastrófico desconocido. Si un método devuelve E_FAIL, CLR no se puede seguir utilizando en el proceso. Las llamadas subsiguientes a métodos de hospedaje devuelven HOST_E_CLRNOTAVAILABLE. |
Comentarios
Todas las llamadas de E/S asincrónicas a las API de la plataforma Windows toman un objeto OVERLAPPED de Win32, que proporciona información tal como la posición del puntero al archivo. Para mantener el estado, las aplicaciones que hacen llamadas de E/S asincrónicas generalmente agregan datos personalizados a la estructura. GetHostOverlappedSize e IHostIoCompletionManager::InitializeHostOverlapped brindan al host una oportunidad de incluir este tipo de datos personalizados.
CLR llama al método GetHostOverlappedSize para determinar el tamaño de los datos personalizados que el host pretende anexar al objeto OVERLAPPED.
Nota |
---|
Sólo se llama una vez a GetHostOverlappedSize.Los datos personalizados del host deben ser del mismo tamaño para cada solicitud de E/S. |
Importante |
---|
El tamaño del propio objeto OVERLAPPED no se incluye en el valor de pcbSize. |
Para obtener más información acerca de la estructura OVERLAPPED, vea la documentación de la plataforma Windows.
Requisitos
Plataformas: vea Requisitos de sistema de .NET Framework.
Encabezado: MSCorEE.h
Biblioteca: Se incluye como recurso en MsCorEE.dll
Versiones de .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0