Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
FORUMS C FAQs C TUTORIELS C LIVRES C COMPILATEURS C SOURCES GTK+

Tutorial d'initiation
A la programmation avec l'API Windows

Tutorial d'initiation a la programmation Windows avec Microsoft Visual C++
PrécédentIndexSuivant

Chapitre 5

Le multithreading

2. Notion de processus et de thread

Cours théorique :

Il ne faut pas confondre les processus et les threads. Un processus est une application. Tout processus dispose d'au moins un thread. Il peut cependant en posséder plusieurs. Pour l'utilisateur moyen, les threads sont invisibles. Ils sont masqués par les processus. La différence entre un processus et un thread est qu'un processus ne constitue en rien une unité d'exécution. L'exécution simultanée de plusieurs processus est réalisée grâce au multithreading. Le processus représente simplement un application vis à vis du système. Lorsque l'utilisateur demande la terminaison d'une application, tous les threads appartenant à cette application devront être terminés.

Tout processus doit comporter au moins un thread, de manière à exécuter le point d'entrée du programme. Ce thread ne pourra jamais être terminé sans que l'application ne soit elle même terminée. Le processus ne doit en aucun cas être assimilé à ce thread. Le thread constitue simplement l'unité d'exécution de base du processus. Le système ne communiquera jamais avec le processus mais toujours avec l'un des threads de ce processus. En effet, le processus n'étant pas une unité d'exécution il ne réalise aucune tâche. Le premier thread est créé par le système. C'est pour cette raison que dans un programme comportant un seul thread, aucune référence n'est faite aux fonctions de l'API relatives aux threads. La création de nouveaux threads devra être explicite. C'est ce qui sera étudié tout au long de ce chapitre.


PrécédentIndexSuivant

Responsable bénévole de la rubrique C : Arnaud Feltz (buchs) - Contacter par EMail :
Vos questions techniques : forum d'entraide C - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.