メインコンテンツにスキップ

Worker

WorkerクラスはWebWorkerを表します。ワーカーが作成されたことを示すために、ページオブジェクトでworkerイベントが発行されます。ワーカーが終了すると、ワーカーオブジェクトでcloseイベントが発行されます。

page.onWorker(worker -> {
System.out.println("Worker created: " + worker.url());
worker.onClose(worker1 -> System.out.println("Worker destroyed: " + worker1.url()));
});
System.out.println("Current workers:");
for (Worker worker : page.workers())
System.out.println(" " + worker.url());

メソッド

evaluate

v1.9より前に追加 worker.evaluate

expressionの戻り値を返します。

Worker.evaluate()に渡された関数がPromiseを返した場合、Worker.evaluate()はそのPromiseが解決されるのを待ってその値を返します。

Worker.evaluate()に渡された関数がSerializableではない値を返した場合、Worker.evaluate()undefinedを返します。Playwrightは、JSONではシリアライズできない追加の値(-0, NaN, Infinity, -Infinity)の転送もサポートしています。

使用法

Worker.evaluate(expression);
Worker.evaluate(expression, arg);

引数

  • expression String#

    ブラウザコンテキストで評価されるJavaScript式。式が関数に評価される場合、その関数は自動的に呼び出されます。

  • arg EvaluationArgument (オプション)#

    expressionに渡すオプションの引数。

戻り値


evaluateHandle

v1.9より前に追加 worker.evaluateHandle

expressionの戻り値をJSHandleとして返します。

Worker.evaluate()Worker.evaluateHandle()の唯一の違いは、Worker.evaluateHandle()JSHandleを返すことです。

Worker.evaluateHandle()に渡された関数がPromiseを返した場合、Worker.evaluateHandle()はそのPromiseが解決されるのを待ってその値を返します。

使用法

Worker.evaluateHandle(expression);
Worker.evaluateHandle(expression, arg);

引数

  • expression String#

    ブラウザコンテキストで評価されるJavaScript式。式が関数に評価される場合、その関数は自動的に呼び出されます。

  • arg EvaluationArgument (オプション)#

    expressionに渡すオプションの引数。

戻り値


url

v1.9より前に追加 worker.url

使用法

Worker.url();

戻り値


waitForClose

追加バージョン: v1.10 worker.waitForClose

アクションを実行し、Workerが閉じるのを待ちます。

使用法

Worker.waitForClose(callback);
Worker.waitForClose(callback, options);

引数

  • options Worker.WaitForCloseOptions (オプション)

    • setTimeout double (オプション)追加バージョン: v1.9#

      待機する最大時間(ミリ秒単位)。デフォルトは30000(30秒)。タイムアウトを無効にするには0を渡します。デフォルト値はBrowserContext.setDefaultTimeout()を使用して変更できます。

  • callback Runnable追加バージョン: v1.9#

    イベントをトリガーするアクションを実行するコールバック。

戻り値


イベント

onClose(handler)

v1.9より前に追加 worker.onClose(handler)

この専用のWebWorkerが終了したときに発行されます。

使用法

Worker.onClose(handler)

イベントデータ