Les threads dans un processus Thread

Le thread est l’entité élémentaire d’exécution de code binaire.

En démarrant, un processus démarre un ou plusieurs threads. L’un d’entre eux est défini comme thread principal et est utilisé pour gérer les entrées/sorties au niveau du système d’exploitation (actions utilisateurs, actions périodiques, messages Windows).

Les descripteurs de thread sont :

  • thread id : utilisé pour différencier les threads les uns des autres.

  • thread handle : utilisé pour manipuler les threads à l’intérieur de l’application. Les API Windows utilisent en général le thread handle comme paramètre d’entrée.

On peut récupérer le thread id du thread principal avec la fonction MainThreadID et les threads id des threads secondaires avec l’API GetCurrentThreadId;.

Le schéma ci-dessous est appelé diagramme de séquence. C’est un diagramme de la norme UML. Ce genre de diagramme représente l’enchaînement des routines par rapport à une action donnéee.

Il représente l’exemple où un processus a instancié deux threads, le Thread ID 1 qui a une durée de vie limitée et le Thread ID2 qui a une durée de vie équivalente à celle du processus.

images/10EP02.png
Pour consulter la suite, découvrez le livre suivant :
couv_RIDELPH.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Description d'un processus
Suivant
Pourquoi utiliser du multithreading ?