定义 Language Environment 的运行时选项
Language Environment® 提供运行时选项来控制程序的处理过程。 在 CICS® 下,具体哪些选项适用于某个程序的执行,不仅取决于该程序本身,还取决于其运行方式。
Java™程序以及从Web启动的程序使用 Language Environment 预初始化模块CEEPIPI。 这具有自己的 CEEDOPT CSECT 版本,此类程序从此 CSECT 获取其运行时选项。
- CEECCICS内置的CEEDOPT CSECT包含 IBM® 和 Language Environment 默认运行时选项。 您可以使用位于 SCEESAMP 中的 CEEWCOPT 样本作业来更改这些缺省运行时选项。 此选项受支持,但使用 CEEPRMxx parmlib 成员来指定运行时选项是首选且最简单的方法。
- CEEPRMxx参数库成员为CEECOPT选项组提供支持,该组是为 CICS 设置默认 Language Environment 运行时选项的首选方法。
- 在区域范围的缺省选项所在的 CEEROPT CSECT 中。 此 CSECT 被链接编辑到同名的装入模块中,并放置在 CICS 作业的 DFHRPL 库并置中的数据集内。
- 用户可替换程序 DFHAPXPO (仅适用于 XPLINK 程序)。
- 在用户提供的应用程序级别运行时选项所在的 CEEUOPT CSECT 中。 此 CSECT 与应用程序本身链接。
- 在使用编程语言选项语句的应用程序源代码中,如下所示:
- 在 C 程序中,通过程序源中的 #pragma runopts 语句。 例如:
#pragma runopts(rptstg(on)) - 在 PL/I 程序中,通过程序内的PLIXOPT声明语句。 例如:
DECLARE PLIXOPT CHARACTER(18) VARYING STATIC EXTERNAL INIT('RPTOPTS(ON) NOSTAE');
注意: 在 COBOL 程序或C++程序中,不存在允许设置运行时选项的源代码机制。 - 在 C 程序中,通过程序源中的 #pragma runopts 语句。 例如:
- 在调试配置文件中指定的 Language Environment 选项中。 有关更多信息,请参阅 调试概要文件。
在大多数安装中,先前列表中的第一个方法对应用程序员不可用,而第二个方法通常不可用。 但是,应用程序员可以使用方法 4 或方法 5。 仅选择一个方法; 请勿尝试同时使用方法 4 和方法 5。 有关生成 CEEUOPT CSECT 以与应用程序链接的信息,请参阅 z/OS Language Environment Customization。
CEEDOPT 和 CEEROPT 都能够设置任何选项,以便以后的规范无法覆盖此选项。
有关如何指定 Language Environment 运行时选项及其含义的更多信息,请参阅《 z/OS Language Environment 编程参考》。
CICS 下忽略的运行时选项
- ABPERC
- AIXBLD
- CBLOPTS
- CBLQDA
- DEBUG
- 特警
- 中断
- LIBRARY
- MSGFILE
- 非NIPT堆栈
- 任务计数
- POSIX (除非 XPLINK 或 Java 程序)
- RTEREUS
- 实时定位系统
- SIMVRD
- 线程堆
- 版本
确定使用了哪些运行时选项
若需了解程序运行时生效的 Language Environment 运行时选项,请指定选项RPTOPTS(ON)。 当程序结束时,将生成使用的所有运行时选项的列表。 该列表将写入 CESE TD 队列。 该列表不仅包含选项的实际设置,还包含它们的来源,即,它们是安装或区域的缺省设置,还是由程序员设置,还是在其中一个出口中设置。
子相关可调度单元组中的运行时选项: 性能注意事项
在 CICS 中,执行 CICS 的LINK命令会创建 Language Environment 所称的子安全区。 新环境已初始化,子相关可调度单元组将获取其运行时选项。 这些运行时选项与创建相关可调度单元组中存在的选项无关。
频繁使用 EXEC CICS LINK 以及许多运行时选项的单独设置可能会影响性能。 静态或动态调用不会产生这些开销。 如果必须使用 CEEUOPT 来指定选项,那么仅指定那些不同于缺省值的选项可提高性能。
执行 CICS XCTL 命令时发生类似情况。 在这种情况下,我们不会获取子相关可调度单元组,但会终止现有相关可调度单元组,然后使用为新程序确定的运行时选项进行重新初始化。 相同的性能注意事项也适用。