// pour créer un mutex, déclarez une variable de type Boolean (initialisée à False) // routine pour prendre la main dès que possible procedure RequestMutex(var Mutex: Boolean); begin repeat until not Mutex; Mutex := True; end; // routine pour laisser la main procedure ReleaseMutex(var Mutex: Boolean); begin Mutex := False; end; // utilisation begin RequestMutex(MutexDonnee); // modifier la donnée, on est tranquilles ici ReleaseMutex(MutexDonnee); end; // Avertissement : si ReleaseMutex n'est pas appellée à chaque fois, la donnée sera verrouillée, soyez donc certains de votre coup sinon ça reste coincé !
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.