====== Exemple de programmation synchrone ====== Prenons l'exemple de la fabrication d'une voiture, avec des valeurs de temps fictives ! ===== Programmation synchrone d'une voiture ===== * Fabrication de la carrosserie : 4 heures * prendre les feuilles de métal * découper les feuilles de métal * souder/coller les feuilles de métal * peindre la carosserie * Fabrication du moteur : 3 heures * Assemblage de la voiture : 2 heures * mettre le moteur, * mettre les équipements * Vérification du bon fonctionnement : 1 heure Voici un programme python qui simule le temps de fabrication de la voiture #!/usr/bin/env python3 # -*- coding: utf-8 -*- #Fabrication d'une voiture import time #déclaration des fonctions pour chaque des taches def carosserie(): time.sleep(4) # pour le temps d'exécution de 4 secondes au lieu de 4 heures print("Carosserie prête.") def moteur(): time.sleep(3) # pour le temps d'exécution de 3 secondes au lieu de 3 heures print("Moteur prêt.") def assemblage(): time.sleep(2) # pour le temps d'exécution de 2 secondes au lieu de 2 heures print("Assemblage fini.") def verification(): time.sleep(1) # pour le temps d'exécution 1 seconde au lieu de 1 heure print("Vérifications finies.") # l'enchainemetn des taches print("Début fabrication de la voiture") debutFabrication = time.time() # memoriser l'heure de debut carosserie() moteur() assemblage() verification() finFabrication = time.time() # memoriser l'heure de fin print("Voiture fabriquée en {} heures.".format(round(finFabrication - debutFabrication),0)) Le résultat de l'exécution du programme indiquera un temps de fabrication de 8 heures : pi@rapsberrypi:~ $ Début fabrication de la voiture pi@rapsberrypi:~ $ Carrosserie prête. pi@rapsberrypi:~ $ Moteur prêt. pi@rapsberrypi:~ $ Assemblage fini. pi@rapsberrypi:~ $ Vérifications finies. pi@rapsberrypi:~ $ Voiture fabriquée en 10.0 heures. ==== Retour à Python : programmation asynchrone ... ==== * [[dev:python:asynchrone:accueil|Python : programmation asynchrone]]