Obxecto obxecto incorporado

Evento obxecto

obxecto do evento

O propósito de controlar un grupo de fibras conséguese mediante un evento (o estado do obxecto do evento é de tipo bool)

relación de herdanza

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

Construtor

Event

constructor de obxectos de eventos

1
new Event(Boolean value = false);

Parámetros de chamada:

  • value: Booleano, especifique se esperar, se é verdadeiro, esperar, o valor predeterminado é falso

función de membro

isSet

Comproba se o obxecto do evento é verdadeiro

1
Boolean Event.isSet();

Devolver resultado:

  • Boolean, devolve verdadeiro se o evento é verdadeiro

set

Activa o evento (cambia o estado do evento a verdadeiro) e chama a pulse()

1
Event.set();

pulse

activa todas as fibras á espera deste evento

1
Event.pulse();

clear

Restablecer o evento (cambiar o estado do evento a falso)

1
Event.clear();

wait

esperar por un evento

1
Event.wait();

acquire

tomar posesión da pechadura

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

Parámetros de chamada:

  • blocking: Booleano, especifique se esperar, esperar se é verdadeiro, o predeterminado é verdadeiro

Devolver resultado:

  • Boolean, Devolve se o bloqueo foi adquirido correctamente, verdadeiro significa adquisición exitosa

O método de adquisición utilízase para adquirir a propiedade do bloqueo. Cando o bloqueo está no estado adquirible, este método devolve verdadeiro inmediatamente.

Cando o bloqueo non se pode adquirir e o bloqueo é verdadeiro, a fibra actual pasa a durmir. Cando outras fibras liberan o bloqueo, este método volve ser verdadeiro.

Cando o bloqueo non se pode adquirir e o bloqueo é falso, o método devolve false.


release

Libera a propiedade do bloqueo

1
Event.release();

Este método liberará a propiedade do bloqueo e xerará un erro se o bloqueo non é propiedade da fibra actual.


count

Consulta o número actual de tarefas en espera

1
Integer Event.count();

Devolver resultado:

  • Integer, devolve o número de tarefas

toString

Devolve a representación en cadea do obxecto, xeralmente devolve "[Obxecto nativo]", o obxecto pode ser reimplementado segundo as súas propias características

1
String Event.toString();

Devolver resultado:

  • String, devolve a representación en cadea do obxecto

toJSON

Devolve a representación en formato JSON do obxecto, xeralmente devolve o conxunto de propiedades lexibles definidas polo obxecto

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

Parámetros de chamada:

  • key: Corda, sen usar

Devolver resultado:

  • Value, devolve un valor que contén JSON serializable