ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
KILL WORKER
|
KILL WORKER {( process )} | ||||||||
引数 | 型 | 説明 | ||||||
process | テキスト, 倍長整数 |
![]() |
終了させるプロセスの番号または名称 (省略の場合はカレントプロセス) | |||||
KILL WORKER コマンドは process に指定した番号、または名称のワーカープロセスにメッセージを送信し、現在の処理が完了次第、未処理のメッセージすべて無視して実行を終了するよう命令します。
このコマンドの対象は、メッセージボックスを持つワーカープロセスに限られます。詳細についてはワーカーについて を参照ください。
process には実行を終了させるプロセスの番号または名称を受け渡します。指定のプロセスが存在しない場合、KILL WORKER は何もしません。
KILL WORKER のパラメーターを省略した場合には、現在実行中のワーカーにコマンドが適用されます。つまり、KILL WORKER (Current process) と同じ結果になります。
CALL WORKER によって作成されたワーカーではないプロセス (例えばアプリケーションワーカーなど) に対してKILL WORKER が適用された場合には、KILL WORKER コマンドはワーカーのメッセージボックスを空にするだけです。
KILL WORKER コマンドによって終了させられたワーカーに、CALL WORKER コマンドを呼び出してメッセージを送ろうとした場合、新しいプロセスが開始されます。一つのワーカーに対して一つのプロセスのみが実行中であるようにするために、新しいプロセスは、その前のプロセスが実際に終了されたあとに開始されます。ただし、CALL WORKER がワーカーから呼び出されて自分自身にメッセージを送信しようとたものの、その直後にプロセスがKILL WORKER によって終了されていた場合、コマンドは何もしないという点に注意してください。
例えばフォームなどで次のようなコードを実行し、ワーカーの終了をトリガーします:
CALL WORKER(vWorkerName;"theWorker";"end")
ワーカーメソッド (theWorker) の例です:
//theWorker メソッド
C_TEXT($1) //パラメーター
Case of
:($1="call") // ワーカーをコールした場合
... // 処理用のコード
:($1="end") // ワーカーの終了を指示した場合
KILL WORKER
End case
プロダクト: 4D
テーマ: プロセス (コミュニケーション)
番号:
1390
初出: 4D v15 R5
ランゲージリファレンス ( 4D v20 R7)