4D v16.3Process state |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
Process state
|
Process state ( process ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
process | 倍長整数 |
![]() |
プロセス番号 | |||||
戻り値 | 倍長整数 |
![]() |
プロセスの状態 | |||||
Process state コマンドは、processに指定したプロセス番号を持つプロセスの状態を返します。
プロセスのステータスとしては以下のような定数があらかじめ定義されています:
定数 | 型 | 値 |
Aborted | 倍長整数 | -1 |
Delayed | 倍長整数 | 1 |
Does not exist | 倍長整数 | -100 |
Executing | 倍長整数 | 0 |
Hidden modal dialog | 倍長整数 | 6 |
Paused | 倍長整数 | 5 |
Waiting for input output | 倍長整数 | 3 |
Waiting for internal flag | 倍長整数 | 4 |
Waiting for user event | 倍長整数 | 2 |
プロセスが存在しない (つまり1からCount tasksまでの番号を渡さなかった) 場合、Process stateはDoes not exist (-100)を返します。
以下の例は、各プロセスの名前とプロセス参照番号を配列asProcNameとaiProcNumに入れます。このメソッドは、プロセスがアボートされたかを調べます。この場合、プロセス名とプロセス番号は配列に追加されません:
$vlNbTasks:=Count tasks
ARRAY TEXT(asProcName;$vlNbTasks)
ARRAY INTEGER(aiProcNum;$vlNbTasks)
$vlActualCount:=0
For($vlProcess;1;$vlNbTasks)
If(Process state($vlProcess)>=Executing)
$vlActualCount:=$vlActualCount+1
PROCESS PROPERTIES($vlProcess;asProcName{$vlActualCount};$vlState;$vlTime)
aiProcNum{$vlActualCount}:=$vlProcess
End if
End for
` Eliminate unused extra elements
ARRAY TEXT(asProcName;$vlActualCount)
ARRAY INTEGER(aiProcNum;$vlActualCount)
プロダクト: 4D
テーマ: プロセス
番号:
330
初出: < 4D v6
ランゲージリファレンス ( 4D v16)
ランゲージリファレンス ( 4D v16.1)
ランゲージリファレンス ( 4D v16.2)
ランゲージリファレンス ( 4D v16.3)