Objeto objeto integrado

Evento de objeto

Objeto de evento

Para lograr el propósito de controlar un grupo de fibras a través de un evento (el estado del objeto del evento es de tipo bool)

Herencia

#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()

Constructor

Event

Constructor de objetos de evento

1
new Event(Boolean value = false);

Parámetros de llamada:

  • value: Booleano, especifique si esperar, esperar cuando sea verdadero, el valor predeterminado es falso

Función miembro

isSet

Determine si el objeto de evento es verdadero

1
Boolean Event.isSet();

Devolver resultado:

  • Boolean, Si el evento es verdadero, devuelve verdadero

set

Active el evento (cambie el estado del evento a verdadero) y llame a pulse ()

1
Event.set();

pulse

Activar todas las fibras esperando el evento

1
Event.pulse();

clear

Restablecer evento (cambiar el estado del evento a falso)

1
Event.clear();

wait

Esperando un evento

1
Event.wait();

acquire

Adquirir la propiedad de la cerradura

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

Parámetros de llamada:

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

Devolver resultado:

  • Boolean, Devuelve si el bloqueo se adquirió con éxito, verdadero significa que la adquisición se realizó correctamente

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

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 vuelve verdadero.

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


release

Liberar la propiedad del bloqueo

1
Event.release();

Este método liberará la propiedad de la cerradura. Si la fibra actual no es propietaria de la cerradura, este método arrojará un error.


count

Consultar el número de tareas en espera actualmente

1
Integer Event.count();

Devolver resultado:

  • Integer, Devuelve el número de tareas

toString

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

1
String Event.toString();

Devolver resultado:

  • String, Devuelve la 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 Event.toJSON(String key = "");

Parámetros de llamada:

  • key: Cadena, sin usar

Devolver resultado:

  • Value, Devuelve un valor que contiene JSON serializable