Objekt eingebautes Objekt

Objektsperre

Fiber Lock Objekt

Im Gegensatz zur Sperre des Betriebssystems wird die Glasfasersperre durch reine Logik implementiert, und die Last des Sperren und Entsperren ist sehr gering

1 2 3 4
var l = new coroutine.Lock(); l.acquire(); ..... l.release();

Vererbung

%0 object object toString() toJSON() Lock Lock new Lock() acquire() release() count() object->Lock Condition Condition Lock->Condition Event Event Lock->Event Semaphore Semaphore Lock->Semaphore

Konstruktor

Lock

Konstruktor

1
new Lock();

Mitgliedsfunktion

acquire

Übernehmen Sie den Besitz des Schlosses

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

Parameter aufrufen:

  • blocking : Boolescher Wert, geben Sie an, ob gewartet werden soll, warten Sie, wenn true, der Standardwert ist true

Ergebnis zurückgeben:

  • Boolean , gibt zurück, ob die Sperre erfolgreich erworben wurde. True bedeutet erfolgreiche Erfassung

Die Erfassungsmethode wird verwendet, um das Eigentum an der Sperre zu erwerben. Wenn sich die Sperre in einem erfassbaren 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. Diese Methode gibt true zurück, wenn andere Fasern die Sperre aufheben.

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


release

Geben Sie das Eigentum an dem Schloss frei

1
Lock.release();

Diese Methode gibt den Besitz der Sperre frei. Wenn die aktuelle Glasfaser die Sperre nicht besitzt, gibt diese Methode einen Fehler aus.


count

Fragen Sie die aktuelle Anzahl wartender Aufgaben ab

1
Integer Lock.count();

Ergebnis zurückgeben:

  • Integer , gibt die Anzahl der Aufgaben zurück

toString

Gibt die Zeichenfolgendarstellung des Objekts zurück, gibt im Allgemeinen "[Native Object]" zurück. Das Objekt kann gemäß seinen eigenen Merkmalen neu implementiert werden

1
String Lock.toString();

Ergebnis zurückgeben:

  • String , gibt eine String-Darstellung des Objekts zurück

toJSON

Gibt die JSON-Darstellung des Objekts zurück und gibt im Allgemeinen eine Sammlung lesbarer Attribute zurück, die vom Objekt definiert wurden

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

Parameter aufrufen:

  • key : String, unbenutzt

Ergebnis zurückgeben:

  • Value , gibt einen Wert zurück, der serialisierbares JSON enthält