Ich habe mal kurz über den WinXp rechner was getest, ist natürlich sehr umständlich
m.l = CreateMutex()
OpenConsole()
PrintN( Str(TryLockMutex(m) ))
PrintN( Str(TryLockMutex(m)))
For i = 1 To 10*60
Delay(100)
Next i
CloseConsole()
ergibt bei mir zweimal den wert "1".
also wenn ich das richtig sehe, kann man trylockmutex mehrfach verwenden. dies bleibt NICHT stehen obwohl der mutex verriegelt wurde und TROTZDEM wird ein Wert ungleich NULL übergeben.
Das ist super, denn damit kann man richtig was anfangen, aber ist das auch richtig so und kein Bug? Ich muß dann doch aber sicher auf für jedes "try" ein "unlock" nehmen, oder? Ich kann ja leider hier nur schwer was testen, da try.. auf meinem rechner nicht läuft.
[edit]
Ach ja, lockmutex wartet dann doch hoffentlich auch, bis das letzte "trylock" mit unlock freigegeben wurde, oder?
Wie gesagt, testen bei mir ist schlecht
Gruß
Toshy
[definitiv Bug] TryLockMutex(Mutex) und LockMutex(Mutex)
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz