Description d’un processus Tâche asynchrone
Le traitement de tâches asynchrones qu’on appelle aussi multithreading en programmation est le fait de demander au programme d’exécuter plusieurs tâches simultanément. On dit aussi que le programme les exécute en parallèle.
Pour comprendre les mécanismes inhérents au multithreading, il faut comprendre comment se déroule l’exécution d’un processus. On peut facilement associer un exécutable à un processus. Une application simple comporte en général un exécutable et des modules. Elle est décrite au niveau du système d’exploitation par un processus. Une application plus complexe peut être l’association de plusieurs exécutables, mais ceci ne change en rien la compréhension.
Le descripteur le plus utilisé concernant les processus est le ProcessID. Il est utilisé par le Gestionnaire des tâches Windows et permet de déterminer de manière unique un processus. Notez bien que le nom de l’exécutable ne permet pas d’identifier de manière unique un processus car par exemple l’utilisateur peut démarrer plusieurs fois Notepad.exe et seul son ProcessID permet de les distinguer les uns des autres.
Pour obtenir son ProcessID, il faut utiliser l’API GetCurrentProcessID.
Ici plusieurs svchost.exe sont lancés et seuls les ProcessID (PID) permettent de...