Articles récents
Python : Programmation multi-thread
Avec le chapitre sur la programmation rĂ©seau en Python, j'avais introduis les processus lĂ©gers (thread). Nous allons approfondir ce sujet car il prĂ©sente un intĂ©rĂȘt Ă©vident.
La programmation multi-thread est intéressante pour plusieurs raisons. Elle permet tout d'abord de paralléliser des actions et donc d'accélérer des traitements.
L'autre intĂ©rĂȘt de ce type de programmation est dans la capacitĂ© offerte au programme principale de transmettre un traitement dangereux (accĂ©s Ă un fichier, accĂšs au rĂ©seau, ...) Ă un autre processus. Ainsi, si le traitement plante, il ne fera pas planter le programme principale, et nous pourrons traiter l'incident. D'ailleurs, cette idĂ©e de transmettre un traitement dit dangereux Ă un autre processus est une des base de la programmation d'une application Android.
1)Le module thread
Pas grand chose Ă dire sur la librairie thread, l'exemple suivant est suffisant:
2)Le module threading
2.1)Comment procéder?
La procĂ©dure est toujours la mĂȘme:2.2)Exemple d'utilisation
Ce qui affichera:

2.3)Les méthodes de la classe threading
Voici la liste des principales méthodes proposées par la classe threading:3)Synchronisation et priorisation
3.1)La synchronisation par les sémaphores
Python propose un équivalent aux sémaphores de la programmation C.Ce qui affichera:

Autre méthode, python définit une classe sémaphore:
3.2)Priorisation avec les queues
Le module Queue permet de gérer les priorité entre plusieurs threads. Il propose plusieurs méthodes:Ce qui affichera:
