Objeto objeto incorporado

Bloqueo de objeto

Objeto de bloqueo de fibra

A diferencia del bloqueo del sistema operativo, el bloqueo de fibra se implementa por lógica pura, y la carga de bloqueo y desbloqueo es muy pequeña.

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

Herencia

%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

Constructor

Lock

Constructor

1
new Lock();

Función miembro

acquire

Tomar posesión de la cerradura

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

Parámetros de llamada:

  • blocking : booleano, especifique si esperar, esperar si es verdadero, el valor predeterminado es verdadero

Resultado devuelto:

  • Boolean , devuelve si el bloqueo se adquirió con éxito, verdadero significa adquisición exitosa

El método de adquisición se utiliza para adquirir la propiedad del bloqueo. Cuando el bloqueo está en un estado adquirible, este método devuelve verdadero inmediatamente.

Cuando el bloqueo no está disponible y el bloqueo es verdadero, la fibra actual se pone en suspensión. Cuando otras fibras liberan el bloqueo, este método devuelve verdadero.

Cuando el bloqueo no está disponible y el bloqueo es falso, el método devuelve falso.


release

Liberar la propiedad de la cerradura

1
Lock.release();

Este método liberará la propiedad del bloqueo. Si la fibra actual no posee el bloqueo, este método arrojará un error.


count

Consulta el número actual de tareas en espera

1
Integer Lock.count();

Resultado devuelto:

  • Integer , devuelve el número de tareas

toString

Devuelve la representación de cadena del objeto, generalmente devuelve "[Objeto nativo]", el objeto se puede volver a implementar de acuerdo con sus propias características

1
String Lock.toString();

Resultado devuelto:

  • String , devuelve una representación de cadena del objeto

toJSON

Devuelve la representación en formato JSON del objeto, generalmente devuelve una colección de atributos legibles definidos por el objeto

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

Parámetros de llamada:

  • key : cadena, sin usar

Resultado devuelto:

  • Value , devuelve un valor que contiene JSON serializable