Partager via


IHostIoCompletionManager::InitializeHostOverlapped, méthode

Fournit à l’hôte la possibilité d’initialiser toutes les données personnalisées à ajouter à une structure Win32 OVERLAPPED utilisée pour les requêtes d’E/S asynchrones.

Syntaxe

HRESULT InitializeHostOverlapped (  
    [in] void* pvOverlapped  
);  

Paramètres

pvOverlapped
[in] Pointeur vers la structure Win32 OVERLAPPED à inclure dans la requête d’E/S.

Valeur de retour

HRESULT Description
S_OK InitializeHostOverlapped retourné.
HOST_E_CLRNOTAVAILABLE Le Common Language Runtime (CLR) n’a pas été chargé dans un processus ou est dans un état dans lequel il ne peut ni exécuter le code managé ni traiter l’appel avec succès.
HOST_E_TIMEOUT L’appel a expiré.
HOST_E_NOT_OWNER L’appelant n’est pas propriétaire du verrou.
HOST_E_ABANDONED Un événement a été annulé alors qu’un thread ou une fibre bloqué l’attendait.
E_FAIL Une défaillance catastrophique inconnue s’est produite. Quand une méthode retourne E_FAIL, le CLR n’est plus utilisable au sein du processus. Les appels suivants aux méthodes d’hébergement renvoient HOST_E_CLRNOTAVAILABLE.
E_OUTOFMEMORY La mémoire n’a pas été suffisante pour allouer la ressource demandée.

Notes

Les fonctions de plateforme Windows utilisent la structure OVERLAPPED pour stocker l’état des requêtes d’E/S asynchrones. Le CLR appelle la méthode InitializeHostOverlapped pour permettre à l’hôte d’ajouter des données personnalisées à une instance OVERLAPPED.

Important

Pour accéder au début de leur bloc de données personnalisé, les hôtes doivent définir le décalage sur la taille de la structure OVERLAPPED (sizeof(OVERLAPPED)).

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

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MSCorEE.h

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

Versions de .NET Framework : Disponible depuis la version 2.0

Voir aussi