IHostIoCompletionManager::InitializeHostOverlapped, méthode

Donne à l'hôte la possibilité d'initialiser toutes données personnalisées à ajouter à une structure OVERLAPPED Win32 utilisée pour les demandes d'E/S asynchrones.

HRESULT InitializeHostOverlapped (
    [in] void* pvOverlapped
);

Paramètres

  • pvOverlapped
    [in] Pointeur vers le début de la structure OVERLAPPED Win32 à inclure avec la demande d'E/S.

Valeur de retour

HRESULT

Description

S_OK

InitializeHostOverlapped a été retourné avec succès.

HOST_E_CLRNOTAVAILABLE

Le Common Language Runtime (CLR) n'a pas été chargé dans un processus ou le CLR présente un état dans lequel il ne peut pas exécuter de code managé ou traiter l'appel avec succès.

HOST_E_TIMEOUT

L'appel a expiré.

HOST_E_NOT_OWNER

L'appelant ne possède pas le verrou.

HOST_E_ABANDONED

Un événement a été annulé alors qu'un thread bloqué ou une fibre l'attendait.

E_FAIL

Une défaillance grave et inconnue s'est produite. Lorsqu'une méthode retourne E_FAIL, le CLR n'est plus utilisable dans le processus. Les appels suivants aux méthodes d'hébergement retournent HOST_E_CLRNOTAVAILABLE.

E_OUTOFMEMORY

La mémoire disponible était insuffisante pour allouer la ressource demandée.

Notes

Les fonctions de plateformes Windows utilisent la structure OVERLAPPED pour stocker l'état des demandes d'E/S asynchrones. Le CLR appelle la méthode InitializeHostOverlapped pour donner à l'hôte la possibilité d'ajouter des données personnalisées à une instance OVERLAPPED.

Remarque importanteImportant

Pour parvenir au début de leur bloc de données personnalisées, les hôtes doivent définir l'offset sur la taille de la structure OVERLAPPED (sizeof(OVERLAPPED)).

Une valeur de retour E_OUTOFMEMORY indique que l'hôte n'a pas réussi à initialiser ses données personnalisées. Dans ce cas, le CLR signale l'erreur et fait échouer l'appel.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

En-tête : MSCorEE.h

Bibliothèque : incluse en tant que ressource dans MSCorEE.dll

Versions du .NET Framework : 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Voir aussi

Référence

ICLRIoCompletionManager, interface

IHostIoCompletionManager::GetHostOverlappedSize, méthode

IHostIoCompletionManager, interface