Compartir a través de


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.

NotaNota

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.

Nota importanteImportante

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

Vea también

Referencia

ICLRIoCompletionManager (Interfaz)

NativeOverlapped

IHostIoCompletionManager (Interfaz)