Leçon 9 : POSIX Threads — Création et join
Un thread est une unité d'exécution légère au sein d'un processus. Dans cette leçon, on apprend à créer des threads avec pthread_create, à attendre leur fin avec pthread_join, et à comprendre la différence fondamentale entre un thread et un processus.
Un processus est une usine ; un thread est un ouvrier dans l'usine. Tous les ouvriers partagent le même entrepôt (la mémoire), mais chacun travaille indépendamment.
- thread
- Unité d'exécution indépendante au sein d'un processus, partageant la mémoire et la table des descripteurs de fichiers avec les autres threads, mais disposant de sa propre stack et de ses propres registres.
- pthread
- POSIX Threads — la norme Unix pour la gestion des threads, implémentée sous Linux via libpthread. L'API inclut pthread_create, pthread_join, et plus encore.
- pthread_create
- Fonction permettant de créer un nouveau thread. Elle prend un identifiant de thread, des attributs, une fonction de démarrage et un argument. Retourne 0 en cas de succès.
- pthread_join
- Attend la fin d'un thread et libère ses ressources. Sans join, un thread zombie reste en mémoire.
- TID (identifiant de thread)
- Identifiant unique d'un thread au sein d'un processus, retourné par pthread_self() ou stocké dans le pthread_t passé à pthread_create.