Objeto objeto incorporado

Bloqueo de objeto

Objeto de bloqueo de fibra

A diferencia de los bloqueos del sistema operativo, los bloqueos de fibra se implementan con lógica pura, y la carga de bloqueo y desbloqueo es 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

Obtención de propiedad de bloqueo

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

Devuelve el resultado:

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

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

Cuando el bloqueo no está disponible y el bloqueo es verdadero, la fibra actual entra 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 de tareas actualmente en espera

1
Integer Lock.count();

Devuelve el resultado:

  • Integer , devuelve el número de tareas

toString

Devuelve una representación de cadena del objeto, generalmente "[Objeto nativo]". Los objetos se pueden volver a implementar de acuerdo con sus propias características

1
String Lock.toString();

Devuelve el resultado:

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

toJSON

Devuelve una representación JSON del objeto, normalmente devuelve una colección de propiedades legibles definidas por el objeto

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

Parámetros de llamada:

  • key : cadena, sin usar

Devuelve el resultado:

  • Value , devuelve un valor que contiene un JSON serializable