Zweck des Monitor.Pulse

8

Ich möchte nur sicherstellen, dass ich hier etwas verstehe. Wenn ich eine Sperre mit Monitor.Enter oder lock erhalte, muss ich Pulse aufrufen, bevor die Sperre aufgehoben wird?

%Vor%

Ich wurde immer zu der Annahme verleitet, dass ein Aufruf Monitor.Exit implizit Monitor.Pulse aufrufen würde. Ist das wirklich wahr?

Ich bin mir nicht sicher, wann du Pulse benutzen würdest. Das verursacht Verwirrung.

    
Jack Kada 23.06.2010, 08:46
quelle

1 Antwort

10

Nein, Sie müssen Pulse ... nicht aufrufen, aber beim Beenden wird das nicht automatisch ausgeführt.

Pulse und PulseAll werden in Verbindung mit Wait für Signalisierungszwecke verwendet.

Weitere Informationen finden Sie in der zweiten Hälfte der Seite (ignorieren Sie im Prinzip das Deadlocking-Bit) :)

    
Jon Skeet 23.06.2010, 08:51
quelle

Tags und Links