Le moniteur suivant protège la lecture d'une variable a
non initialisée.
sync : moniteur; | processus P var fait : boolean; | debut fini : condition; | ecrire(a); procedure finEcrire; | sync.finEcrire; debut | fin fait := vrai; | fini.signaler | processus Q fin | debut procedure debutLire; | sync.debutLire; debut | lire(a); si (non fait) alors | fin fini.attendre fin procedure init; debut fait := faux fin