[definitiv Bug] TryLockMutex(Mutex) und LockMutex(Mutex)

Fragen und Bugreports zur PureBasic 4.0-Beta.
Toshy
Beiträge: 713
Registriert: 22.03.2005 00:29
Computerausstattung: Computer und Strom vorhanden
Wohnort: LK Wolfenbüttel

Beitrag von Toshy »

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
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

:freak:
Ok, das scheint wirklich buggy...
Gesperrt