Objekt eingebautes Objekt

Objektereignis

Ereignisobjekt

Um den Zweck zu erreichen, eine Gruppe von Fasern durch ein Ereignis zu steuern (der Zustand des Ereignisobjekts ist vom Typ bool)

Erbe

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>Lock|new Lock()|acquire();release();count()] [<this>Event|new Event()|isSet();set();pulse();clear();wait()] [object] <:- [Lock] [Lock] <:- [Event] Lock new Lock() acquire() release() count() Event new Event() isSet() set() pulse() clear() wait() object toString() toJSON()

Konstrukteur

Event

Ereignisobjektkonstruktor

1
new Event(Boolean value = false);

Aufrufparameter:

  • value: Boolean, geben Sie an, ob gewartet werden soll, warten wenn wahr, der Standardwert ist falsch

Mitgliederfunktion

isSet

Bestimmen Sie, ob das Ereignisobjekt wahr ist

1
Boolean Event.isSet();

Ergebnis zurückgeben:

  • Boolean, Wenn das Ereignis wahr ist, gebe true zurück

set

Aktivieren Sie das Ereignis (ändern Sie den Ereignisstatus auf true) und rufen Sie pulse() auf

1
Event.set();

pulse

Aktiviere alle Fasern, die auf das Ereignis warten

1
Event.pulse();

clear

Ereignis zurücksetzen (Ereignisstatus auf falsch ändern)

1
Event.clear();

wait

Warten auf ein Ereignis

1
Event.wait();

acquire

Erwerben Sie das Eigentum am Schloss

1
Boolean Event.acquire(Boolean blocking = true);

Aufrufparameter:

  • blocking: Boolean, geben Sie an, ob gewartet werden soll, wenn es wahr ist, warten Sie, der Standardwert ist wahr

Ergebnis zurückgeben:

  • Boolean, Gibt zurück, ob die Sperre erfolgreich erfasst wurde, true bedeutet, dass die Erfassung erfolgreich war

Die Methode "acquire" wird verwendet, um den Besitz der Sperre zu erwerben. Wenn sich die Sperre in einem akquirierbaren Zustand befindet, gibt diese Methode sofort true zurück.

Wenn die Sperre nicht verfügbar ist und die Blockierung wahr ist, geht die aktuelle Faser in den Ruhezustand.Wenn andere Fasern die Sperre aufheben, gibt diese Methode true zurück.

Wenn die Sperre nicht verfügbar ist und die Blockierung false ist, gibt die Methode false zurück.


release

Sperrbesitz freigeben

1
Event.release();

Diese Methode gibt den Besitz der Sperre frei.Wenn die aktuelle Faser die Sperre nicht besitzt, wird bei dieser Methode ein Fehler ausgegeben.


count

Abfrage der Anzahl der aktuell wartenden Aufgaben

1
Integer Event.count();

Ergebnis zurückgeben:

  • Integer, Gibt die Anzahl der Aufgaben zurück

toString

Gibt die String-Darstellung des Objekts zurück, gibt im Allgemeinen "[Native Object]" zurück, das Objekt kann entsprechend seiner eigenen Eigenschaften neu implementiert werden

1
String Event.toString();

Ergebnis zurückgeben:

  • String, Gibt die String-Darstellung des Objekts zurück

toJSON

Gibt die Darstellung des Objekts im JSON-Format zurück, gibt im Allgemeinen eine Sammlung von lesbaren Attributen zurück, die durch das Objekt definiert sind

1
Value Event.toJSON(String key = "");

Aufrufparameter:

  • key: String, unbenutzt

Ergebnis zurückgeben:

  • Value, Gibt einen Wert zurück, der JSON serialisierbar enthält