TTHREADMANAGER |
Gestionnaire de processus léger |
---|---|
Free Pascal | System |
Syntaxe
Type TThreadManager=Record InitManager:Function:Boolean; DoneManager:Function:Boolean; BeginThread:TBeginThreadHandler; EndThread:TEndThreadHandler; SuspendThread:TThreadHandler; ResumeThread:TThreadHandler; KillThread:TThreadHandler; CloseThread:TThreadHandler; ThreadSwitch:TThreadSwitchHandler; WaitForThreadTerminate:TWaitForThreadTerminateHandler; ThreadSetPriority:TThreadSetPriorityHandler; ThreadGetPriority:TThreadGetPriorityHandler; GetCurrentThreadId:TGetCurrentThreadIdHandler; SetThreadDebugNameA:TThreadSetThreadDebugNameHandlerA; SetThreadDebugNameU:TThreadSetThreadDebugNameHandlerU; InitCriticalSection:TCriticalSectionHandler; DoneCriticalSection:TCriticalSectionHandler; EnterCriticalSection:TCriticalSectionHandler; TryEnterCriticalSection:TCriticalSectionHandlerTryEnter; LeaveCriticalSection:TCriticalSectionHandler; InitThreadVar:TInitThreadVarHandler; RelocateThreadVar:TRelocateThreadVarHandler; AllocateThreadVars:TAllocateThreadVarsHandler; ReleaseThreadVars:TReleaseThreadVarsHandler; BasicEventCreate:TBasicEventCreateHandler; BasicEventDestroy:TBasicEventHandler; BasicEventResetEvent:TBasicEventHandler; BasicEventSetEvent:TBasicEventHandler; BasiceventWaitFor:TBasicEventWaitForHandler; RTLEventCreate:TRTLCreateEventHandler; RTLEventDestroy:TRTLEventHandler; RTLEventSetEvent:TRTLEventHandler; RTLEventResetEvent:TRTLEventHandler; RTLEventWaitFor:TRTLEventHandler; RTLEventWaitForTimeout:TRTLEventHandlerTimeout; End; |
Paramètres
Nom | Description |
---|---|
InitManager | Ce champ permet d'indiquer la fonction d'initialisation du gestionnaire de processus léger. |
DoneManager | Ce champ permet d'indiquer la fonction de nettoyage du gestionnaire de processus léger. |
BeginThread | Ce champ permet d'indiquer le gestionnaire de démarrage un nouveau processus léger. |
EndThread | Ce champ permet d'indiquer le gestionnaire de terminaison d'un processus léger. |
SuspendThread | Ce champ permet d'indiquer le gestionnaire de suspension d'un processus léger. |
ResumeThread | Ce champ permet d'indiquer le gestionnaire de reprise d'un processus léger. |
KillThread | Ce champ permet d'indiquer le gestionnaire de suppression d'un processus léger. |
CloseThread | Ce champ permet d'indiquer le gestionnaire de mise en oeuvre de fermeture d'un processus léger. |
ThreadSwitch | Ce champ permet d'indiquer le gestionnaire provoquant un threadswitch. |
WaitForThreadTerminate | Ce champ permet d'indiquer le gestionnaire d'attente qu'un processus léger s'arrête. |
ThreadSetPriority | Ce champ permet de définir la priorité des processus léger. |
ThreadGetPriority | Ce champ permet de demander la priorité des processus léger. |
GetCurrentThreadId | Ce champ permet de demander l'identificateur de processus léger actuel. |
InitCriticalSection | Ce champ permet d'indiquer le gestionnaire d'initialisation d'une section critique. |
DoneCriticalSection | Ce champ permet d'indiquer le gestionnaire de libération d'une section critique. |
EnterCriticalSection | Ce champ permet d'indiquer le gestionnaire d'entrée en section critique. |
TryEnterCriticalSection | Ce champ permet d'indiquer le mise en oeuvre d'une entrée en section critique. |
LeaveCriticalSection | Ce champ permet d'indiquer le gestionnaire pour quitter une section critique. |
InitThreadVar | Ce champ permet d'initialiser une variable de processus léger. |
RelocateThreadVar | Ce champ permet de déplacer une variable de processus léger. |
AllocateThreadVars | Ce champ permet d'allouer des variables de processus léger. |
ReleaseThreadVars | Ce champ permet de libérer les variables de processus léger. |
BasicEventCreate | Ce champ permet de créer un événement de base. |
BasicEventDestroy | Ce champ permet de détruire un événement de base. |
BasicEventResetEvent | Ce champ permet de réinitialiser un événement de base. |
BasicEventSetEvent | Ce champ permet de fixer un événement de base. |
BasiceventWaitFor | Ce champ permet d'attendre après un événement de base. |
RTLEventCreate | Ce champ permet de créer un événement RTL. |
RTLEventDestroy | Ce champ permet de libérer un événement RTL. |
RTLEventSetEvent | Ce champ permet de fixer un événement RTL. |
RTLEventResetEvent | Ce champ permet de réinitialiser un événement RTL. |
RTLEventWaitFor | Ce champ permet d'attendre après un événement RTL. |
RTLEventWaitForTimeout | Ce champ permet d'attendre l'événement RTL, avec un dépassement de délai. |
Description
Ce type de données permet d'indiquer un enregistrement du gestionnaire de processus léger.
Remarques
- Le type de données TThreadManager est un enregistrement contenant tous les rappels nécessaires aux routines de gestion des processus léger de la bibliothèque d'exécution Free Pascal. Le gestionnaire de processus léger peut être défini par la procédure SetThreadManager et le gestionnaire de processus léger actuel peut être récupéré avec la procédure GetThreadManager.
- Le RTL de Windows définira automatiquement le gestionnaire de processus léger sur un gestionnaire de processus léger système, en fonction des routines de processus léger Windows. Les systèmes d'exploitation Unix fournissent une unité cthreads mettant en oeuvre des processus léger basés sur les routines de processus léger POSIX de la bibliothèque C. Il n'est pas inclus par défaut, car cela rendrait l'unité centrale dépendante de la bibliothèque C.
Voir également
Langage de programmation - Free Pascal - Référence de procédures et fonctions - GetThreadManager
Langage de programmation - Free Pascal - Référence de procédures et fonctions - SetThreadManager
Dernière mise à jour : Samedi, le 22 mai 2021