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

モジュールコルーチン

同時実行制御モジュール

参照方法:

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で、funcsと同じ数のファイバーを有効にします。

戻り結果:

  • 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で、funcsと同じ数のファイバーを有効にします。

戻り結果:

  • 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;