IHostIoCompletionManager::GetHostOverlappedSize, méthode
Obtient la taille des données personnalisées que l'hôte projette d'ajouter aux demandes d'E/S.
HRESULT GetHostOverlappedSize (
[out] DWORD *pcbSize
);
Paramètres
- pcbSize
[out] Pointeur vers le nombre d'octets que le Common Language Runtime (CLR) doit allouer en plus de la taille de l'objet OVERLAPPED Win32.
Valeur de retour
HRESULT |
Description |
---|---|
S_OK |
GetHostOverlappedSize a été retourné avec succès. |
HOST_E_CLRNOTAVAILABLE |
Le 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. |
Notes
Tous les appels d'E/S asynchrones aux API des plateformes Windows prennent un objet OVERLAPPED Win32 qui fournit des informations telles que la position du pointeur de fichier. Pour conserver l'état, les applications qui font des appels d'E/S asynchrones ajoutent en général des données personnalisées à la structure. GetHostOverlappedSize et IHostIoCompletionManager::InitializeHostOverlapped permettent à l'hôte d'inclure ces données personnalisées.
Le Common Language Runtime (CLR) appelle la méthode GetHostOverlappedSize pour déterminer la taille des données personnalisées que l'hôte projette d'ajouter à l'objet OVERLAPPED.
Remarque |
---|
GetHostOverlappedSize est appelée une seule fois.Les données personnalisées de l'hôte doivent être de la même taille pour chaque demande d'E/S. |
Important |
---|
La taille de l'objet OVERLAPPED n'est pas incluse dans la valeur de pcbSize. |
Pour plus d'informations concernant la structure OVERLAPPED, consultez la documentation de la plateforme Windows.
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