Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Suspend le thread spécifié.
Remarque
Une application 64 bits peut suspendre un thread WOW64 à l’aide de la fonction Wow64SuspendThread.
Syntaxe
DWORD SuspendThread(
[in] HANDLE hThread
);
Paramètres
[in] hThread
Handle vers le thread à suspendre.
Le handle doit disposer du droit d’accès THREAD_SUSPEND_RESUME . Pour plus d’informations, consultez Sécurité des threads et droits d’accès.
Valeur retournée
Si la fonction réussit, la valeur de retour est le nombre de suspensions précédent du thread ; sinon, c’est (DWORD) -1. Pour obtenir des informations d’erreur étendues, utilisez la fonction GetLastError.
Remarques
Si la fonction réussit, l’exécution du thread spécifié est suspendue et le nombre de suspensions du thread est incrémenté. L’interruption d’un thread entraîne l’arrêt de l’exécution du code en mode utilisateur (application).
Cette fonction est principalement conçue pour être utilisée par les débogueurs. Elle n’est pas destinée à être utilisée pour la synchronisation de threads. L’appel de SuspendThread sur un thread propriétaire d’un objet de synchronisation, tel qu’un mutex ou une section critique, peut entraîner un blocage si le thread appelant tente d’obtenir un objet de synchronisation appartenant à un thread suspendu. Pour éviter cette situation, un thread au sein d’une application qui n’est pas un débogueur doit signaler à l’autre thread de s’interrompre. Le thread cible doit être conçu pour surveiller ce signal et répondre de manière appropriée.
Chaque thread a un nombre d’interruptions (avec une valeur maximale de MAXIMUM_SUSPEND_COUNT). Si le nombre de suspensions est supérieur à zéro, le thread est suspendu ; sinon, le thread n’est pas suspendu et peut être exécuté. L’appel de SuspendThread entraîne l’incrémentation du nombre d’interruptions du thread cible. La tentative d’incrémentation au-delà du nombre maximal de suspensions provoque une erreur sans incrémenter le nombre.
La fonction ResumeThread décrémente le nombre d’interruptions d’un thread suspendu.
Windows Phone 8.1 : Cette fonction est prise en charge pour les applications du Windows Phone Store sur Windows Phone 8.1 et versions ultérieures.
Windows 8.1 et Windows Server 2012 R2 : cette fonction est prise en charge pour les applications du Windows Store sur Windows 8.1, Windows Server 2012 R2 et versions ultérieures.
Spécifications
| Besoin | Valeur |
|---|---|
| Client minimum requis | Windows XP [applications de bureau | Applications UWP] |
| Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | Applications UWP] |
| plateforme cible | Fenêtres |
| En-tête | processthreadsapi.h (inclure Windows.h sur Windows Vista, Windows 7, Windows Server 2008 Windows Server 2008 R2) |
| Bibliothèque | Kernel32.lib ; WindowsPhoneCore.lib sur Windows Phone 8.1 |
| DLL | Kernel32.dll; KernelBase.dll sur Windows Phone 8.1 |
Voir aussi
processus et fonctions de thread