CreateThread

Prototypes

HANDLE CreateThread(LPSECURITY_ATTRIBUTES AttributsThread, DWORD TaillePile, LPTHREAD_START_ROUTINE PrincipalThread, LPVOID Parametres, DWORD Options, LPDWORD NumeroThread);

Description

Crée un nouveau thread dans le processus courant avec les conventions suivantes :

Le résultat est le handle sur le thread.

Exemple

#include <windows.h>
#include <winbase.h>

SECURITY_ATTRIBUTES AttributDeSecurites;
HANDLE Handle;
DWORD NumeroThread;

static DWORD WINAPI PrincipalThread(LPVOID Parametres)
{
...
return(0);
}

...
AttributDeSecurites.nLength=sizeof(SECURITY_ATTRIBUTES);
AttributDeSecurites.bInheritHandle=TRUE;
AttributDeSecurites.lpSecurityDescriptor=NULL;
Handle=CreateThread(&AttributDeSecurites, 0, PrincipalThread, (PVOID)"Bonjour le monde", 0, &NumeroThread);
if (!Handle) ...
if (!TerminateThread(Handle, 0)) ...

Avertissement

Si le thread n'a pu être créé, le résultat est NULL.

L'espace de données est partagé par tous les threads, aussi, il est nécessaire de les synchroniser.

Voir aussi

GetCurrentThread pour retrouver le handle du thread courant. GetCurrentThreadId pour retrouver l'identifiant du thread courant. TerminateThread pour terminer un thread. GetExitCodeThread pour lire le code retour d'un thread.