Algorithme de Dekker
Description du code
Code source ou contenu du fichier
Code ada (Algorithme de Dekker) (54 lignes)
PROCEDURE dekker_s_algorithm IS TYPE process_enumeration IS(first,second); favored_process : process_enumeration; p1_wants_to_enter, p2_wants_to_enter : boolean; PROCEDURE process_one IS BEGIN LOOP p1_wants_to_enter := true; WHILE p2_wants_to_enter LOOP IF favored_process = second THEN p1_wants_to_enter := false; WHILE favored_process = second LOOP NULL; END LOOP; p1_wants_to_enter := true; END IF; END LOOP; critical_section_one; favored_process := second; p1_wants_to_enter := false; other_stuff_one; END LOOP; END process_one; PROCEDURE process_two IS BEGIN LOOP p2_wants_to_enter := true; WHILE p1_wants_to_enter LOOP IF favored_process = first THEN p2_wants_to_enter := false; WHILE favored_process = first LOOP NULL; END LOOP; p2_wants_to_enter := true; END IF; END LOOP; critical_section_two; favored_process := first; p2_wants_to_enter := false; other_stuff_two; END LOOP; END process_two; BEGIN p1_wants_to_enter := false; p2_wants_to_enter := false; favored_process := first; PARBEGIN process_one; process_two; PAREND; END dekker_s_algorithm;
Autres extraits de codes en ada
- Algorithme de Dekker
- Suite de Fibonacci Exemple d'itération en ADA
- Suite de Fibonacci Exemple de récursion en ADA
- Hello world
- Tous les extraits
Version en cache
20/11/2024 22:32:14 Cette version de la page est en cache (à la date du 20/11/2024 22:32:14) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 05/10/2009, dernière modification le 28/10/2018
Source du document imprimé : https://www.gaudry.be/sniplet-rf-ada/dekker_s_algorithm.ada.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.