モジュール基本モジュール

モジュールコルーチン

並行性制御モジュール

参照方法:

1
var coroutine = require('coroutine');

オブジェクト

Lock

オブジェクトをロックします。参照してください。 Lock

1
Lock coroutine.Lock;

Semaphore

セマフォ オブジェクト、参照 Semaphore

1
Semaphore coroutine.Semaphore;

Condition

条件変数オブジェクト、参照 Condition

1
Condition coroutine.Condition;

Event

イベント オブジェクト、参照 Event

1
Event coroutine.Event;

Worker

独立したスレッド作業オブジェクト、参照 Worker

1
Worker coroutine.Worker;

静的関数

start

ファイバーを開始してファイバー オブジェクトに戻る

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

呼び出しパラメータ:

  • func: 関数、ファイバーによって実行される関数を指定します
  • args: ...、可変パラメータ シーケンス、このシーケンスはファイバー内の関数に渡されます

結果を返す:

  • Fiber、ファイバーオブジェクトを返す

parallel

一連の関数を並行して実行し、戻りを待つ

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

呼び出しパラメータ:

  • funcs: 配列、並列に実行される関数の配列
  • fibers: 整数、同時ファイバーの数を制限します。デフォルトは -1 です。func と同じ数のファイバーを有効にします

結果を返す:

  • Array, 関数の実行結果の配列を返します

一連のデータを処理する関数を並行して実行し、戻りを待つ

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

呼び出しパラメータ:

  • datas: 配列、並列実行されるデータ配列
  • func:関数、並列実行関数
  • fibers: 整数、同時ファイバーの数を制限します。デフォルトは -1 です。データと同じ数のファイバーを有効にします

結果を返す:

  • Array, 関数の実行結果の配列を返します

関数を複数回並列実行して戻りを待つ

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

呼び出しパラメータ:

  • func: 関数、並列実行される関数の数
  • num: 整数、反復タスクの数
  • fibers: 整数、同時ファイバーの数を制限します。デフォルトは -1 です。func と同じ数のファイバーを有効にします

結果を返す:

  • Array, 関数の実行結果の配列を返します

一連の関数を並行して実行し、戻りを待つ

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

呼び出しパラメータ:

  • funcs: ...、並行して実行される一連の関数

結果を返す:

  • Array, 関数の実行結果の配列を返します

current

現在のファイバーを返します

1
static Fiber coroutine.current();

結果を返す:

  • Fiber、現在のファイバー オブジェクト

sleep

現在のファイバーで指定された時間を一時停止します

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

呼び出しパラメータ:

  • ms: 整数、一時停止する時間をミリ秒単位で指定します。デフォルトは 0 です。つまり、空きがあればすぐに実行を再開します

静的プロパティ

fibers

アレイ、現在実行中のすべてのファイバー アレイを返します

1
static readonly Array coroutine.fibers;

spareFibers

整数、クエリ、アイドル設定 Fiber 数値、サーバーのジッターが大きい場合はアイドルネスを適度に増やすことができます Fiber量。デフォルトは 256 です

1
static Integer coroutine.spareFibers;

vmid

整数、クエリ現在 vm ナンバリング

1
static readonly Integer coroutine.vmid;

loglevel

これを整数、変更、およびクエリします vm 出力情報のフィルタリングに使用される出力レベル。デフォルトは console.NOTSET、すべての出力

1
static Integer coroutine.loglevel;