Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

^$JOB

Caché プロセスの (ジョブ) 情報を提供します。

Synopsis

^$JOB(job_number)
^$J(job_number)

パラメータ

job_number ObjectScript コマンドを入力するときに作成される、システム特有のジョブ番号。アクティブな Caché プロセスは一意のジョブ番号を持ちます。システムにログインすると、ジョブは初期化されます。UNIX® システムでは、ジョブ番号は Caché が呼び出されたときに開始した子プロセスの PID です。job_number は整数で指定する必要があります。16 進数値はサポートされていません。

概要

ローカル Caché システムで Caché ジョブの存在に関する情報を取得するために、$DATA$ORDER、および $QUERY 関数に対する引数として ^$JOB 構造化システム変数を使用することができます。

以下の例は、$DATA$ORDER、および $QUERY 関数に対する引数として ^$JOB を使用する方法を示しています。

$DATA に対する引数としての ^$JOB

$DATA(^$JOB(job_number))

$DATA に対する引数としての ^$JOB は、指定したジョブが ^$JOB にノードとして存在するかどうかを示す整数値を返します。次のテーブルは、$DATA が返すことができる整数値を示しています。

意味
0 ジョブは存在しない
1 ジョブが存在する

以下の例は Caché プロセスの存在を調べています。

   SET x=$JOB
   WRITE !,$DATA(^$JOB(x))

変数 x は、現在のプロセスのジョブ番号に設定されます (例えば 4294219937)。WRITE はブーリアン 1 を返し、このプロセスが存在することを示します。

$ORDER に対する引数としての ^$JOB

$ORDER(^$JOB(job_number),direction)

$ORDER に対する引数としての ^$JOB は、指定したジョブ番号に対する照合順序で、次または前の ^$JOB ジョブ番号を返します。そのようなジョブ番号が ^$JOB ノードとして存在しない場合は、$ORDER は NULL 文字列を返します。

direction 引数は、次のジョブ番号を返すか、前のジョブ番号を返すかを指定します。direction 引数を指定しない場合、Caché は、指定したジョブ番号に対する照合順序で、次のジョブ番号を返します。詳細は、"$ORDER" 関数を参照してください。

以下のサブルーチンは Caché のジョブ・テーブルを検索し、JOB というローカル配列ノードにあるジョブ番号を格納します。

JOB
   SET pid=""
   FOR i=1:1 {
      SET pid=$ORDER(^$JOB(pid))
      QUIT:pid="" 
      SET JOB(i)=pid
    }
    WRITE "Total Jobs in Job Table: ",i
    QUIT

$QUERY に対する引数としての ^$JOB

$QUERY(^$JOB(job_number))

$QUERY に対する引数としての ^$JOB は、指定したジョブ番号に対する照合順序で、次の ^$JOB ジョブ番号を返します。そのようなジョブ番号が ^$JOB にノードとして存在しない場合は、$QUERY は NULL 文字列を返します。

以下の例は、Caché ジョブ・テーブルで最初 2 つのジョブを返します。間接指定演算子 (@) を使用します。

   SET x=$QUERY(^$JOB(""))
   WRITE !,x
   WRITE !,$QUERY(@x)

これは、以下のようなジョブの値を返します。

^$JOB("4294117993")

^$JOB("4294434881")

関連項目

FeedbackOpens in a new tab