Partager via


ICLRSyncManager::GetMonitorOwner, méthode

Obtient l'instance d'IHostTask qui possède l'analyseur identifié par le cookie spécifié.

HRESULT GetMonitorOwner (
    [in]  SIZE_T     cookie,
    [out] IHostTask *ppOwnerHostTask
);

Paramètres

  • cookie
    [in] Cookie associé à l'analyseur.

  • ppOwnerHostTask
    [out] Pointeur vers IHostTask qui possède actuellement l'analyseur, ou null si aucune tâche n'est propriétaire.

Valeur de retour

HRESULT

Description

S_OK

GetMonitorOwner 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

L'hôte appelle généralement GetMonitorOwner dans le cadre d'un mécanisme de détection d'interblocage. Le cookie est associé à un analyseur lorsqu'il est créé à l'aide d'un appel à IHostSyncManager::CreateMonitorEvent.

RemarqueRemarque

Un appel destiné à libérer l'événement sous-jacent de l'analyseur peut se bloquer (mais pas s'interbloquer) si un appel à cette méthode est appliqué au cookie associé à cet analyseur.D'autres tâches peuvent également se bloquer si elles tentent d'acquérir cet analyseur.

GetMonitorOwner retourne toujours immédiatement et peut être appelé n'importe quand après un appel à CreateMonitorEvent. L'hôte n'a pas besoin d'attendre qu'une tâche attende l'événement.

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

ICLRSyncManager, interface

IHostSyncManager, interface