已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TongLINK/Q8.0开发环境,演讲人:演讲时间:,目录,API介绍及应用程序开发应用举例练习,API介绍及应用程序开发,API介绍及应用程序开发,普通API介绍,API与核心的交互机制,普通API介绍,主要结构及作用连接标识:TLQ_ID应用实例标识:TLQ_QCUHDL消息描述:TLQMSG_INFO消息操作选项:TLQMSG_OPT消息错误信息:TLQError重要字符串消息内容:msgcontent用户属性:UserProperty,普通API介绍,消息由三部分组成:消息描述(必需)用户自定义属性(可选)消息内容(必需),普通API介绍,tlq_api.hTLQMSG_INFO结构:structmsg_infocharVerNo;/*版本号*/charMsgType;/*消息类型*/charUsrContextUSR_CONTEXT_LEN+1;/*消息的用户数据*/intMsgSize;/*消息长度*/intExpiry;/*生命周期*/charPriority;/*优先级,0.9*/charPersistence;/*持久性类型*/charMsgOperateType;/*消息控制类型,压缩或安全出口*/charMsgOperateInfoOPERATEDATALEN+1;/*消息控制数据*/unsignedintUserPropertyLen;/*用户自定义属性串的长度*/unsignedintUserPropertyNum;/*用户自定义属性的个数*/charCorrMsgIdMSGIDLEN+1;/*消息的关联属性*/,普通API介绍,以下属性在消息发送时由核心赋值,应用时不必关心,*发送成功返回后,可获取这些属性的值charSrcNodeNAMELEN+1;/*消息的源节点*/charDestQNameNAMELEN+1;/*目标队列名*/intPutDateTime;/*消息发送时间*/charGroupIDMSGIDLEN+1;/*组标识*/intGroupSeq;/*组序号*/charGroupStatus;/*组消息的状态*/charMsgOrigin;/*消息的来源*/charMsgIdMSGIDLEN+1;/*消息标识*/unsignedintOrgMsgLen;/*消息处理前的长度*/charLONG_INT_MAXLEN;/*文件大小*/intEvTime;/*事件产生的时间*/unsignedintEvStyle;/*事件类型*/intRollbackCount;/*消息回滚次数*/charReserve16;/*以备后用*/shortOffSet;/*偏移量*/,普通API介绍,以下属性在消息发送时由核心赋值,应用时不必关心,*发送成功返回后,可获取这些属性的值charSrcNodeNAMELEN+1;/*消息的源节点*/charDestQNameNAMELEN+1;/*目标队列名*/intPutDateTime;/*消息发送时间*/charGroupIDMSGIDLEN+1;/*组标识*/intGroupSeq;/*组序号*/charGroupStatus;/*组消息的状态*/charMsgOrigin;/*消息的来源*/charMsgIdMSGIDLEN+1;/*消息标识*/unsignedintOrgMsgLen;/*消息处理前的长度*/charLONG_INT_MAXLEN;/*文件大小*/intEvTime;/*事件产生的时间*/unsignedintEvStyle;/*事件类型*/intRollbackCount;/*消息回滚次数*/charReserve16;/*以备后用*/shortOffSet;/*偏移量*/,普通API介绍,函数接口的作用:实现应用与核心的交互实现个性化应用的定制,普通API介绍,接口分类,普通API介绍,连接断开系统资源,1.连接系统资源intTlq_Conn(TLQ_ID*gid,TLQError*err);2.断开系统资源intTlq_DisConn(TLQ_ID*gid,TLQError*err);说明:这两个函数成对出现,普通API介绍,开始结束应用实例,1.开始应用实例intTlq_OpenQCU(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,char*QCUName,TLQError*err);2.结束应用实例intTlq_CloseQCU(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);说明:这两个函数成对出现,普通API介绍,初始化函数,1.初始化TLQMSG_INFOintTlq_InitMsgInfo(TLQMSG_INFO*pUsrMsg);2.初始化TLQMSG_OPTintTlq_InitMsgOpt(TLQMSG_OPT*msgopt);,普通API介绍,发送消息,包括普通消息、组消息、订阅事件消息、发布订阅、取消发布订阅等intTlq_PutMsg(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQMSG_INFO*pUsrMsg,TLQMSG_OPT*msgopt,char*UsrProperty,char*msgcontent,TLQError*err);msgopt.OperateType为不同的值,表示的不同操作TLQOT_PUT发送消息TLQOT_PUB发布消息TLQOT_DELPUB取消发布TLQOT_SUB订阅消息TLQOT_DELSUB取消订阅,普通API介绍,intTlq_GetMsg(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQMSG_INFO*pUsrMsg,TLQMSG_OPT*msgopt,char*msgcontent,TLQError*err);msgopt.OperateTypeTLQOT_GET时,表示接收消息msgopt.OperateTypeTLQOT_BROWSE时,表示浏览消息,接收消息和浏览消息,普通API介绍,intTlq_DeleteMsg(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQMSG_INFO*pUsrMsg,TLQMSG_OPT*msgopt,int*msg_num,TLQError*err);msgopt.DelState值标识删除不同状态的消息TLQSTATE_ALL删除所有状态的消息TLQSTATE_READY删除没有发送或接收完毕的消息TLQSTATE_SENDING删除正在发送的消息TLQSTATE_RECEIVING删除正在接收的消息,删除消息,普通API介绍,intTlq_AckMsg(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQMSG_INFO*pUsrMsg,TLQMSG_OPT*msgopt,intAckType,TLQError*err);msgopt.AckMode值标识删除不同状态的消息TLQACK_AUTO自动确认模式,消息接收后即被删除TLQACK_USER用户确认模式,消息接收后并不删除,必须等待用户确认模式下,AckType分别取值如下:TLQACK_COMMIT提交确认TLQACK_ROLLBACK回滚确认,消息接收确认,普通API介绍,1.组消息开始的标志intTlq_BeginGroup(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);2.提交组消息intTlq_CommitGroup(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);3.回滚组消息intTlq_RollbackGroup(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);说明:2、3必须与1配对使用,组消息接口,普通API介绍,1.事务开始标志intTlq_Begin(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);2.事务提交标志intTlq_Commit(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);3.事务失败后用于回滚事务intTlq_Rollback(TLQ_ID*gid,TLQ_QCUHDL*qcuHandle,TLQError*err);说明:2、3必须与1配对使用,事务接口,普通API介绍,main()Tlq_Conn(/断开系统资源说明:这是应用实例运行的基本框架,是必需的,应用模式,瘦客户,瘦客户开发,瘦客户,瘦客户,1、获取连接工厂Tlq_ClusterLookup(TLQCLUSTER_FACTORY*list,/集群连接列表int*num,/集群连接数char*jndiUrl,/jndi服务器地址char*ClusterQname,/集群队列名TLQError*tlqerr);/错误信息,客户端专用函数说明,瘦客户,2、创建生产、消费者实例,Tlq_ClusterCreateInstance(TLQCLUSTER_HANDLE*ClusterId,/IN/OUT实例句柄TLQCLUSTER_FACTORY*list,/集群成员地址列表intlistnum,/集群成员个数intConnectionNum,/单个成员创建连接数intflag,/实例类型,0:发送,1:接收intsequence,/实例序号,同一进程中不同实例序号不能相同TLQMSG_INFO*uMsg,/用于接收消息的消息描述,发送实例忽略此参数TLQMSG_OPT*msgopt,/用于接收消息的操作选项,发送实例忽略此参数intMaxSize,/发送实例可发送消息的最大值,小于等于0时使用系统默认值char*library,/用于接收实例处理消息用的动态库全路径OnException_t*ExHandle,/自定义的回调函数TLQError*tlqerr)/错误信息,瘦客户,3、生产者发送消息,Tlq_ClusterProducer(TLQCLUSTER_HANDLE*ClusterId,/实例句柄TLQMSG_INFO*uMsg,/消息描述TLQMSG_OPT*msgopt,/消息操作char*msgcontent,/消息内容char*UserProperty,/自定义属性值intprolen,/自定义属性长度TLQError*tlqerr);/错误信息应用通过生产者向集群队列发送消息。,瘦客户,5、关闭集群实例,Tlq_ClusterCloseInstance(TLQCLUSTER_HANDLE*ClusterId);关闭集群实例,释放系统资源。,4、通知集群实例开始接收处理数据Tlq_ClusterConsumer(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国药科大学《GPS原理与应用》2024-2025学年第一学期期末试卷
- 山西省吕梁市汾阳中学2026届数学高二上期末学业质量监测模拟试题含解析
- 陕西省渭南区解放路中学2025-2026学年物理高二第一学期期末达标检测模拟试题含解析
- 贵州工程应用技术学院《单片机原理及其应用》2024-2025学年第一学期期末试卷
- 肿瘤科淋巴瘤放疗并发症护理指南
- 病理科肿瘤早期筛查流程
- 脊柱外科腰椎间盘突出处理流程
- 肺移植围手术期护理流程
- 副经理自我评估
- 慢性肾衰竭腹膜透析护理规范
- 土建工程施工安全注意事项
- 人性的弱点完整版本
- 【生物 四川卷】2025年四川省高考招生统一考试真题生物试卷(真题+答案)
- 保安岗位人员替换方案(3篇)
- 环境生物化学与毒理化学课件
- 子宫内膜癌病人的护理
- CSSD特殊感染器械的处理流程-课件
- 4.4.2对数函数的图象与性质(教案)-高一上学期数学人教A版
- 职业暴露后的应急处理和报告流程
- 基于项目化学习的红色经典作品整本书阅读教学探索-以《红星照耀中国》为例
- 2024-2025学年广东省五校高二上学期期末联考化学试题(解析版)
评论
0/150
提交评论