4D v16.3CALL WORKER |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
CALL WORKER
CALL WORKER
CALL WORKER コマンドは、process に受け渡した名称または ID のワーカープロセスを作成、または呼び出して、任意の param パラメーターを使った method の実行を要求します。 CALL WORKER コマンドは params をカプセル化し、メッセージの形でワーカーが持つメッセージボックスに受け渡します。ワーカープロセスについての詳細はワーカーについてを参照ください。 process パラメーターに指定するプロセス名またはプロセス番号により、ワーカーは特定されます:
注: ユーザーインターフェースを表示するためにデータベースがアプリケーションモードで起動されたときに作成されるメイン・プロセスは、CALL WORKER によってコールすることのできるワーカープロセスです。ただし、メイン・プロセスのプロセス名は 4D の言語環境により異なるため、CALL WORKER を使用する場合にはプロセス番号 (常に 1) で指定することが推奨されます。 注:
ワーカープロセスはランタイムエクスプローラーのプロセスリストに表示されます。また、PROCESS PROPERTIES コマンドはワーカープロセスも対象に実行できます。 method には、ワーカープロセスのコンテキストで実行するプロジェクトメソッド名を受け渡します。method には空の文字列を渡すこともでき、その場合ワーカーは、自身のプロセス開始時に指定されていた初期メソッドがあれば、それを実行します。 注: メイン・プロセス (プロセス番号 1) は初期プロセスを持たないため、method に空の文字列を受け渡して CALL WORKER をコールすることはできません。そのため、CALL WORKER (1;"") は何もしません。 param パラメーターに値を受け渡すことで、一つ以上の引数を method に受け渡すことができます。引数の渡し方は、サブルーチンを使う場合と同じです (メソッドに引数を渡す 参照)。プロセスのコンテキストで実行を開始する際に、プロセスメソッドはこれらの引数を $1, $2, などの値として受け取ります。配列はメソッドのパラメーターに渡せないことに留意してください。また、CALL WORKER コマンドを使うにあたっては、次のことに留意してください:
ワーカープロセスは、アプリケーションが終了するか、あるいは KILL WORKER をコールされるまで存続します。必要ないワーカーにはこのコマンドを使い、メモリを解放するのがよいでしょう。 フォーム上に、選択年の統計などの算出をおこなうボタンを設置します。 ボタンのメソッドは次のとおりです: // ワーカー vWorkerName をコールし、実行メソッドと引数を指定します workerMethod のコードは次のとおりです: // ワーカーが実行するメソッドです
参照
|
プロパティ
プロダクト: 4D 履歴
初出: 4D v15 R5 ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||