- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第五章:TUXEDO的缓冲区
5.1TUXEDO的缓冲区介绍
TUXEDO的客户端与服务端之间的数据传送是通过数据缓冲区来进行的.TUXEDO的数据
缓冲区主要包括STRING,CARRAY,VIEW,VIEW32,FML,FML32,从TUXEDO7.1开始,还增加了XML
数据缓冲区.另外,TUXEDO还有几种缓冲区是专门针对COBAL的。在TUXEDO中还可以定义自
己的缓冲区类型。
在TUXEDO中客户端与服务端之间进行数据交换的缓冲区(如:tpcall()中的输入,输出缓
冲区等)都要用TUXEDO自己的API进行操作,不能采用C语言的函数如:malloc(),free()
等分配,释放这些缓冲区。同时在程序中要自己管理这些缓冲区,象C语言中的缓冲区一样,在
用tpalloc()分配一块缓冲区,在不在需要该缓冲区时用tpfree()释放掉。
与缓冲区使用有关的ATMI
char*tpalloc(char*type,char*subtype,longsize)
描述:分配缓冲区
参数:type:缓冲区的类型
subtype:缓冲区的子类型,只有VIEW有子类型,其他的缓冲区该参数要设为NULL
long:缓冲区的大小
返回值:成功返回一个指向所分配空间首地址的CHAR*形指针,失败返回NULL。
char*tprealloc(char*ptr,longsize)
描述:重新分配缓冲区
参数:ptr:指向原缓冲区首地址的指针
size:新缓冲区的大小
返回值:成功返回一个指向新分配空间首地址的CHAR*形指针,失败返回NULL。
voidtpfree(char*bufptr)
描述:释放由TPALLOC()或TPREALLOC()分配的缓冲区
参数:bufptr:指向要释放的缓冲区首地址的指针
返回值:无
注意:用TPALLOC(),TPREALLOC()分配的内存只能有TPFREE()释放掉,不能用FREE()
longtptypes(char*ptr,char*type,char*subtype)
描述:返回有ptr所指向的缓冲区的类型及子类型
参数:ptr:指向要进行类型识别的缓冲区首地址的指针
type:类型名
subtype:子类型名(只对VIEW类型有效)
返回值:0成功,-1失败,错误号保存在全局变量tperrno中。
下面我们对常用的数据缓冲区分别进行介绍。
STRING:
类似于C中的CHAR*,是以\0接尾的字符串,如果两台机器之间的编码不一样(如一台为
ASCII,另一台为EBCDIC),TUXEDO将自动进行编码/工作。STRING一般用于在客户端
与SERVER端之间传送文本数据。STRING缓冲区的使用例子在后面的章节中有很多,在此不
作介绍。
CARRAY:
是不以\0接尾的字符串,长度要由用户指定。如果两台机器之间的编码不一样,也不进行编码
/工作。注意在TPCALL,TPACALL,TPRETURN等ATMI中使用CARRY类型的缓冲区时,一定
要指定长度,否则会出错。CARRY一般用于传送二进制数据。如在客户端与SERVER端之间传
送一个二进制的文件,就要采用CARRAY类型的缓冲区。CARRAY缓冲区的使用例子在后面的
章节会见到,在此不作介绍。
5.2VIEW(VIEW32)缓冲区
类似于C中的结构体,不同的是该结构的成员的数据类型可以为short,char,long,float,
double,STRING,CARRAY。要在一个文件中定义该VIEW(VIEW32)的结构,然后才能使用。VIEW
有子类型,子类型为该VIEW(VIEW32)的名字,在调用TPALLOC()分VIEW(VIEW32)缓冲区时要指
定该子类型。
VIEW32与VIEW类似,但它采用32位长度的数表示结构体中字段的ID等,VIEW采用16位表示,
所以VIEW32可表示的字段。
VIEW(VIEW32)缓冲区还可以转化为FML(FML32)缓冲区。
VIEW的使用过程:
1.定义一个
您可能关注的文档
- 使用EECS240 0.18μm CMOS工艺设计电阻器与MOM电容器.pdf
- 商务谈判技巧培训:概述与类型分析.pdf
- 财务报表构成、分类、编制要求及资产负债表与利润表作用.pdf
- 第五课变量双向实操练习:蓄水杯自动控制系统设计.pdf
- 美胜长滩岛2014春节特惠:B2B预定系统与签证服务.pdf
- 轻松学英语新方法:首次战斗.pdf
- 文案创作与故事讲述:打造有温度文案.pdf
- 盘面分析与操作策略:市场回调中机遇与挑战.pdf
- 丰田Hilux NG维修手册:A340EA343E自动变速器电子控制系统概述.pdf
- 燃烧与灭火:教学设计与实践.pdf
- DB44_T+2767-2025河口海湾总氮、总磷水质评价指南.docx
- 中医药科技成果转化评价技术规范.docx
- DB44_T+2750-2025农村供水工程数字化建设技术导则.docx
- DB44_T+2769-2025金属矿山生态修复技术规范.docx
- 镁合金航天航空零部件长效防护微弧氧化膜层工艺规范.docx
- 《甘青青兰中绿原酸和胡麻苷含量的测定 高效液相色谱法》发布稿.pdf
- DB44_T+753-2025声环境质量自动监测技术规范.docx
- 信息技术 智算服务 异构算力虚拟化及池化系统要求.docx
- DB44_T+2759-2025黄荆栽培技术规程.docx
- 废生物制药溶媒再生乙腈.docx
最近下载
- 一级生物安全实验室应急预案培训计划.docx
- 《大数据分析与应用》全套教学课件.pptx
- [全国高校统编教材法语][北外马晓宏版][1-4册][第二册词汇表].doc VIP
- 初中化学竞赛辅导培训.ppt VIP
- 灵魂三问,思辨推进,辩证回应——2024北京高考卷“历久弥新”作文讲评课件.pptx VIP
- 四年级语文上册复习课件-知识点专项复习 (共22张PPT)部编版.pptx VIP
- 宪法宣传优秀课件.ppt VIP
- 多频微带天线设计.docx VIP
- T CAQI 252-2022《无化学阻垢剂饮用水处理器》.pdf
- 部编版四年级上册语文-生字专项期末总复习复习课件 (共21张PPT).pptx VIP
原创力文档


文档评论(0)