0

根据作业开始前的 MVS JCL 参考指南,它请求对数据集的独占控制:

DISP and ENQ: Before starting the first step of a job, the initiator requests
control of all of the data sets in that job by issuing an ENQ for each of them,
using the value specified for DISP to determine the kind of ENQ issued. The
initiator issues the ENQ for each data set at the highest level required for that
data set by any step of the job. For example, if all steps of the job request
shared control of a specific data set (DISP=SHR) then the ENQ for that data set
is requested as SHR. If, on the other hand, any step of the job requests
exclusive control of a specific data set (DISP=NEW, DISP=MOD, or DISP=OLD), then
the ENQ for that data set is requested EXCL.

但我有两种不同的行为:

a) 我通过 ISPF DATASET_A 打开并提交一个 JCL,它使用 DISP=(NEW,CATALOG,DELETE) 的相同数据集。我收到一条 TSO 消息,因为作业请求了数据集,并且在我通过 ISPF 发布数据集之前,JCL 不会启动。

b) 我提交了 2 个 JCL,它们使用 DISP=(NEW,CATALOG,DELETE) 的相同数据集,但两者同时开始。

为什么并行运行时作业不请求对数据集的独占访问权限?

4

1 回答 1

3

b) 中的作业不像您期望的那样运行的原因是您同时启动它们。他们都创建了一个同名的新数据集,这是允许的。当作业完成时,首先完成的作业应该对数据集进行编目,而第二个作业将收到 NOTCAT2 错误,因为它已经被编目。

disp 语句的第二部分(Catalog)是成功的步骤发生的情况,第三部分(Delete)是不成功的步骤发生的情况。

创建新数据集并获得独占访问权限

MOD 表示以下之一:

    * The data set exists and records are to be added to the end of it. The data set must be sequential.

    * A new data set is to be created.

In either case, MOD specifies exclusive (unshared) use of the data set. 

取自IBM 手册

于 2011-07-05T14:03:41.710 回答