Problème de mutex avec Waitforsingleobject non-bloquant
Au secours, je me trouve confronter à un probleme pour le moins bizarre.
Peut etre est ce l'effet d'haloween sur mon ordinateur.
J'utilise un mutex pour synchroniser des threads sur une ressource matèrielle, et j ai voulu faire un petit essai pour voir si cela fonctionné, mon code est donc le suivant:
Code:
1 2 3 4 5 6 7 8 9
|
Mutex_Bdechargement:=CreateMutex(nil,false,'Mutex_Bdechargement');
if getlasterror=ERROR_ALREADY_EXISTS then
begin
showmessage('Hello');
end;
Waitforsingleobject(Mutex_Bdechargement,infinite);
Waitforsingleobject(Mutex_Bdechargement,infinite);
Waitforsingleobject(Mutex_Bdechargement,infinite); |
Et là je suis étonné car quand je fais une execution pas à pas, les lignes
"Waitforsingleobject" ne bloque pas l'éxécution du thread.
J ai donc regardé si la fonction"Waitforsingleobject" passé en timeout (je sais c est bete) où était abandoned, mais ce n est pas le cas....
Le mystère reste entier....
[Modération]
Titre modifié par Laurent Dardenne
Ancien : Problème de mutex
[/Modération]
Re: Problème de mutex avec Waitforsingleobject non-bloquant
Dans ce cas ton extrait de code risque d'être 'un peu court' ?
Quelle version de Delphi ? de l'OS et SP ?
Citation:
Envoyé par rvzip64
Et là je suis étonné car quand je fais une execution pas à pas, les lignes "Waitforsingleobject" ne bloque pas l'éxécution du thread.
Et uniquement dans ce cas là (mode débug)?