| 4D v20.1KILL WORKER | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v20.1
 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)
	
	
	ランゲージリファレンス ( 4D v20.1)
	
	
	
 コメントを追加
コメントを追加