3.10.1 排他/共用制御の指定方法と適用範囲
ジョブで割り当てるファイルおよびディレクトリに対して排他/共用制御を指定する場合,DD要素のDISP属性で次の表に示す指定をすることで排他/共用要求指示となる。
DISP属性値 |
排他/共用※ |
---|---|
MOD |
排他要求 |
NEW |
排他要求 |
OLD |
排他要求 |
RNW |
排他要求 |
SHR |
共用要求 |
指定例を次に示す。
-
DISP属性値に"OLD"を指定
<DD NAME="DD0001" TYPE="FILE" DSN="FILE1" DISP="OLD"/>
DISP属性値に"OLD"を指定したファイル割り当て要求のため,排他要求となる。
-
DISP属性値に"SHR"を指定
<DD NAME="DD0002" TYPE="FILE" DSN="FILE2" DISP="SHR"/>
DISP属性値に"SHR"を指定したファイル割り当て要求のため,共用要求となる。
-
DISP属性値に"MOD"を指定
<DD NAME="DD0003" TYPE="FILE" DSN="FILE3" DISP="MOD"/>
DISP属性値に"MOD"を指定したファイル割り当て要求のため,排他要求となる。
-
DISP属性値を省略
<DD NAME="DD0004" TYPE="FILE" DSN="FILE3" />
DISP属性値を省略したファイル割り当て要求のため,DISP属性値のデフォルト値"NEW"を仮定し排他要求となる。
-
DISP属性値に"SHR"を指定し,第2パラメータに"DELETE"を指定
<DD NAME="DD0005" TYPE="FILE" DSN="FILE5" DISP="SHR,DELETE"/>
DISP属性値で"SHR"を指定しているが,第2パラメータに"DELETE"を指定しているため,排他要求となる。
同一ジョブ内に,同一ファイルおよび同一ディレクトリを指定し,それぞれのDISP属性値で排他または共用要求をしている場合,排他要求を優先する。
指定例を次に示す。
(1)と(2)では同一ファイル名を指定しているが,DISP属性値の指定が"OLD"と"SHR"で異なる指定となっている。この場合の排他/共用制御は,"排他要求"を優先するためファイル"FILE1"は排他要求となる。
次に示すDD要素の割り当てをする場合,指定したファイルを含むディレクトリに対して排他要求が行われていると,該当するDD要素はロック確保待ちとなる。
-
共用要求でファイルを割り当てるDD要素の指定
<DD NAME="DD0010" TYPE="FILE" DSN="C:\opt\hitachi\bjex\bin\PUBLIC\FILE10" DISP="SHR"/>
-
排他要求でディレクトリを割り当てるDD要素の指定※
<DD NAME="DD0010" TYPE="DIR" DSN="C:\opt\hitachi\bjex\bin\PUBLIC" DISP="OLD"/>
注※ この指定のジョブを実行している場合,このディレクトリおよびディレクトリ配下のファイルパスの割り当てをするジョブは,ロック確保待ちとなる。
排他/共用制御は,同一サーバ内で実行されるバッチジョブ実行システムから起動したジョブごとに行われる。ただし,DD要素に指定したもの以外は,バッチジョブ実行システムの排他/共用制御の対象とはならない。
排他/共用制御ではDD要素のTYPE属性に指定したファイルおよびディレクトリが対象となるが,ジョブ実行単位にジョブ間での排他/共用制御が必要ないものについては対象としない。
TYPE属性値ごとの排他/共用制御の適用可否を次の表に示す。
TYPE属性値 |
排他/共用制御の適用可否 |
理由 |
---|---|---|
DIR |
○ |
ジョブ間で使用されるため。 |
FILE |
○ |
|
GDG |
○※ |
|
LIB |
○ |
|
DUMMY |
× |
ジョブ内で生成・削除するもので,ジョブ間で使用することはないため。 |
DATA |
× |
|
SYSOUT |
× |
|
TEMP |
× |
|
TEMPISAM |
× |