Mòdul mòdul bàsic

Corutina del mòdul

Mòdul de control de simultaneïtat

Mètode de referència:

1
var coroutine = require('coroutine');

Objecte

Lock

Bloqueja l’objecte, vegeu Lock

1
Lock coroutine.Lock;

Semaphore

Objecte semàfor, vegeu Semaphore

1
Semaphore coroutine.Semaphore;

Condition

Condició objecte variable, vegeu Condition

1
Condition coroutine.Condition;

Event

Objecte d'esdeveniment, vegeu Event

1
Event coroutine.Event;

Worker

Objecte de treball de fil independent, vegeu Worker

1
Worker coroutine.Worker;

Funció estàtica

start

Inicieu una fibra i torneu a l'objecte de fibra

1 2
static Fiber coroutine.start(Function func, ...args);

Paràmetres de trucada:

  • func: Funció, especifiqueu la funció que ha d'executar la fibra
  • args: ..., seqüència de paràmetres variables, aquesta seqüència es passarà a la funció de la fibra

Resultat de retorn:

  • Fiber, Retorna l'objecte de fibra

parallel

Executeu un conjunt de funcions en paral·lel i espereu el retorn

1 2
static Array coroutine.parallel(Array funcs, Integer fibers = -1);

Paràmetres de trucada:

  • funcs: Array, un conjunt de funcions executades en paral·lel
  • fibers: Enter, limiteu el nombre de fibres simultànies, el valor per defecte és -1, activeu el mateix nombre de fibres que funcs

Resultat de retorn:

  • Array, Retorna una matriu de resultats d'execució de funcions

Executeu una funció en paral·lel per processar un conjunt de dades i espereu la devolució

1 2 3
static Array coroutine.parallel(Array datas, Function func, Integer fibers = -1);

Paràmetres de trucada:

  • datas: Matriu, matriu de dades per a l'execució en paral·lel
  • func: Funció, funció executada en paral·lel
  • fibers: Enter, limiteu el nombre de fibres simultànies, el valor per defecte és -1, activeu el mateix nombre de fibres que les dades

Resultat de retorn:

  • Array, Retorna una matriu de resultats d'execució de funcions

Executeu una funció diverses vegades en paral·lel i espereu el retorn

1 2 3
static Array coroutine.parallel(Function func, Integer num, Integer fibers = -1);

Paràmetres de trucada:

  • func: Funció, el nombre de funcions executades en paral·lel
  • num: Enter, el nombre de tasques repetitives
  • fibers: Enter, limiteu el nombre de fibres simultànies, el valor per defecte és -1, activeu el mateix nombre de fibres que funcs

Resultat de retorn:

  • Array, Retorna una matriu de resultats d'execució de funcions

Executeu un conjunt de funcions en paral·lel i espereu el retorn

1
static Array coroutine.parallel(...funcs);

Paràmetres de trucada:

  • funcs: ..., un conjunt de funcions executades en paral·lel

Resultat de retorn:

  • Array, Retorna una matriu de resultats d'execució de funcions

current

Retorna la fibra actual

1
static Fiber coroutine.current();

Resultat de retorn:

  • Fiber, L'objecte de fibra actual

sleep

Posa en pausa el temps especificat per la fibra actual

1
static coroutine.sleep(Integer ms = 0) async;

Paràmetres de trucada:

  • ms: Enter, especifiqueu el temps a suspendre, en mil·lisegons, el valor per defecte és 0, és a dir, si hi ha temps lliure, reprendrà l'operació immediatament

Propietats estàtiques

fibers

Matriu, retorna totes les matrius de fibra que s’executen actualment

1
static readonly Array coroutine.fibers;

spareFibers

Enter, consulta i posa inactiu Fiber Nombre, l'aturada es pot augmentar moderadament quan la fluctuació del servidor és gran Fiberquantitat. El valor per defecte és 256

1
static Integer coroutine.spareFibers;

vmid

Enter, consulta l'actualitat vm número de sèrie

1
static readonly Integer coroutine.vmid;

loglevel

Enter, modifiqueu-ho i consulteu-ho vm El nivell de sortida, que s’utilitza per filtrar la informació de sortida, és el valor per defecte console.NOTSET, Tota la sortida

1
static Integer coroutine.loglevel;