PROFDINFO.COM

Votre enseignant d'informatique en ligne

Exercice de révision des threads sous Windows

Le convoyeur de fraises

Pouvez écrire un programme multitâche sous Windows qui simule un convoyeur de fraises?

Votre programme doit manipuler trois quantités:

  1. Le nombre de fraises dans le bac source, initialisé à 100.
  2. Le nombre de fraises sur le convoyeur, initialisé à 0.
  3. Le nombre de fraises dans le bac de destination, initialisé à 0.

Le thread principal doit démarrer deux threads:

  1. Le premier thread doit simuler le premier robot qui prend une fraise du bac source et le dépose sur le convoyeur. Le nombre de fraises dans le bac source doit donc être décrémenté et le nombre de fraises sur le convoyeur doit être incrémenté. Le thread recommence ces opérations tant que le thread principal ne lui demande pas de se terminer.
  2. Le deuxième thread doit simuler le deuxième robot qui prend une fraise du convoyeur et le dépose dans le bac de destination. Le nombre de fraises sur le convoyeur doit donc être décrémenté et le nombre de fraises dans le bac de destination doit être incrémenté. Le thread recommence ces opérations tant que la thread principal ne lui demande pas de se terminer.

Ensuite le thread principal attend deux secondes, termine les deux threads secondaires et affiche les résultats:

  1. Le nombre de fraises dans le bac source.
  2. Le nombre de fraises sur le convoyeur.
  3. Le nombre de fraises dans le bac de destination.

Consignes