📅  最后修改于: 2023-12-03 14:59:55.889000             🧑  作者: Mango
CICS (Customer Information Control System)是一种常用的事务处理系统。在CICS中,提供了一种临时存储(Temporary Storage,TS)的机制。TS可以在一个CICS任务内、不同CICS任务之间、不同CICS Region之间共享数据。
TS用于在CICS应用程序之间传递信息并保持状态。TS支持多种转换和访问方式。TS设计用于临时处理和传输数据。一旦使用完毕,它们就会被删除。
定义一个TS可以分为以下几个步骤:
在CICS的资源定义(Resource Definition)表中定义一段空间作为临时存储区,CICS会自动将其格式化并管理。
DEFINE TS QUEUE (QUEUE.NAME) -
INITIALSIZE(nnnn) -
MAXSIZE(nnnn) -
TYPE(QUEUE|MAP) -
RECOVERY(ENABLED|DISABLED) -
USERDATA(user-defined-information)
写入数据到临时存储区可以使用以下CICS命令:
WRITEQ TS QUEUE(NAME) INTO(data-item)
从临时存储区中读取数据可以使用以下CICS命令:
READNEXT TS QUEUE(NAME) INTO(data-item)
清除临时存储区所有的数据可以使用以下CICS命令:
DELETEQ TS QUEUE(NAME)
CICS支持两种类型的TS:队列(Queue)和地图(Map)。
队列是先进先出(FIFO)的。当一个应用程序写入队列时,它的数据将被添加到队列的末尾。当一个应用程序从队列中读取数据时,它总是读取队列中的第一个元素。
地图是一个固定长度的存储区,按名称组织。每个地图都包括一个唯一的名称和一组数据项。应用程序可以使用该名称将其数据项写入和读取地图。地图数据项需要被事先定义,然后在使用时被引用。
上述介绍是一般的使用CICS-临时存储过程,但也不是完全通用的,不同业务需求可能还需要做一定的调整,具体使用按实际情况来。 总之,TS是对于CICS程序员来说是必不可少的一个利器,当面对不同的问题时,操作TS会是一个不错的选择。