侦听
请求发送至处理线程的通知。
描述
此命令请求在 CICSplex 中发生特定事件时向处理线程发送通知。
- 事件由类型为 CPSM Notification 的资源表表示。
- LISTEN 命令与 RECEIVE 命令结合使用。 如果使用 LISTEN 来请求事件通知,那么必须使用后续 RECEIVE 命令来检索有关事件的信息。
- API 处理线程一次最多可以有 256 个未完成的已完成异步请求。 如果不定期发出 RECEIVE 命令,并且处理线程达到其最大值 256 ,那么将废弃异步请求而不进行处理。 有关异步处理的完整描述,请参阅 开发 CICSPlex SM 应用程序。
相关命令
ADDRESS , CANCEL 和 RECEIVE
选项
- CONTEXT(数据值)
- 标识此命令的上下文。 上下文必须是 CMAS 或 CICSplex 的 1-to 8 字符名称。
如果未指定 CONTEXT 选项,那么将采用线程的缺省上下文。
- EVENT(数据值)
- 标识表示要侦听的事件的资源表。 此值必须是有效 CICSPlex ® SM Notification 资源表的 1-to 8 字符名称。 有关按类型列出的 CICSPlex SM 资源表的列表,请参阅 开发 CICSPlex SM 应用程序。
- FILTER(cpsm-token)
- 标识要用于此操作的过滤器。 FILTER 选项仅侦听满足指定过滤条件的事件。通过使用 FILTER 选项,可以将接收到的通知限制为与特定 CMAS 或 CICSplex 关联的事件。 例如,您可以创建类似如下的过滤器:
并在 LISTEN 命令上指定该过滤器以仅接收 CICSplex EYUPLX01生成的事件的通知。PLEXNAME=EYUPLX01.用于标识过滤器的 cpsm-token 值由指定 FILTER 命令返回。
- NOTFILTER(cpsm-token)
- 标识要用于此操作的过滤器。 NOTFILTER 选项仅侦听不满足指定过滤条件的事件。
用于标识过滤器的 cpsm-token 值由指定 FILTER 命令返回。
- NOTIFICATION(数据引用)
- 指定一个变量以接收 CICSPlex SM 分配给此通知请求的全字令牌。
当您要取消通知请求时,必须在 CANCEL 命令上指定此标识令牌。
- REASON(数据引用)
- 指定变量以接收此命令返回的全字原因值。
- RESPONSE(数据引用)
- 指定一个变量以接收此命令返回的全字响应值。
- THREAD(cpsm-token)
- 标识要用于此操作的 API 线程。 用于标识线程的 cpsm-token 值由 CONNECT 命令返回。
- TOKEN(数据值)
- 定义 1-to 4 字符令牌,您选择将此 LISTEN 请求与后续 RECEIVE 命令的结果相关联。 此令牌供程序使用; CICSPlex SM 不使用该值。 当发生指定类型的事件时, RECEIVE 命令将返回令牌。
条件
以下是 LISTEN 命令可返回的 RESPONSE 值的列表。 每个 RESPONSE 的描述都包含关联的 REASON 值的列表 (如果适用)。
- 确定
- 该命令已成功完成处理。
- 发生了错误
- 由于下列其中一个原因,发生了环境错误:
- 无服务
- 应用程序存根程序无法装入 API 服务模块。
- 无存储器
- 应用程序存根程序无法在正在运行处理线程的地址空间中获取必需的存储器。
- SOCRESOURCE
- CMAS 拥有的必需资源不可用。
- FAILED
- 由于下列其中一个原因,该命令失败:
- 异常终止
- 命令处理异常结束。
- EXCEPTION
- 命令处理迂到异常情况。
- 不兼容
- 由于以下原因发生了不兼容的情况:
- INVALIDEVT
- 指定的事件与 FILTER 或 NOTFILTER 选项上指定的过滤器不兼容。
- INVALIDPARM
- 检测到无效参数。 将返回无效的参数作为原因值:
- 上下文
- EVENT
- FILTER
- NOTFILTER
- 通知
- 线程
- 令牌。
- NOTAVAILABLE
- 由于下列其中一个原因,发生了不可用的情况:
- APITASK
- API 控制子任务未处于活动状态。
- CPSMAPI
- 处理线程尝试连接的 CMAS 不可用于 API 处理。
- 项目 XMGR
- 处理线程当前所连接的 CMAS 不参与管理指定的 CICSplex ,并且没有其他 CMAS 可用于管理 CICSplex。
- 服务器 GONE
- 处理线程所连接的 CMAS 不再处于活动状态。
- 版本 INVL
- 由于下列其中一个原因,发生了版本冲突:
- NotSupported
- 不支持用于此命令的应用程序存根程序的版本。
- NOTVSNCONN
- 用于此命令的应用程序存根程序的版本与用于 CONNECT 命令的版本不同。
