TUXEDO函数详解:ATMI与FML操作

需积分: 11 7 下载量 157 浏览量 更新于2024-11-21 收藏 46KB DOC 举报
"TUXEDO函数说明 DOC" 在TUXEDO系统中,这些函数是ATMI(Application Transaction Monitor Interface)的一部分,用于构建分布式事务处理应用。TUXEDO提供了一套丰富的API,帮助开发者管理缓冲区、处理FML数据结构、建立和断开服务器连接以及处理请求和错误。下面是对各个函数的详细解释: 1. 缓冲区使用相关的ATMI函数: - `tpalloc`: 这个函数用于动态分配指定大小的缓冲区。它需要三个参数:类型、子类型和大小。返回值是一个指向分配内存的指针,如果分配失败则返回NULL。子类型通常用于特定类型的缓冲区,如视图(VIEW)。 - `tprealloc`: 用于改变已分配缓冲区的大小。它接受原缓冲区指针和新大小作为参数,返回新分配的缓冲区指针。同样,失败时返回NULL。 - `tpfree`: 释放由`tpalloc`或`tprealloc`分配的内存。这个函数不返回任何值,但必须确保正确使用,以避免内存泄漏。 - `tptypes`: 用于获取缓冲区的类型和子类型信息。输入缓冲区指针,输出缓冲区的类型和子类型。 2. 常用的FML (FML32) 操作函数: FML是一种用于数据传输的数据结构。以下是一些基本操作: - `Falloc`: 分配FML32结构体,用于创建FML数据。 - `Finit`: 初始化FML结构,准备添加数据。 - `Fadd`: 向FML结构中添加数据项。 - `Fchg`: 修改FML结构中的数据项。 - `Fget`: 从FML结构中获取数据项。 - `Fprint`: 打印FML结构的内容,用于调试。 - `Ferror`: 检查并报告FML操作中的错误。 3. 连接的建立与断开有关的ATMI函数: - `tpchkauth`: 验证客户端的权限和认证。 - `tpinit`: 初始化ATMI环境,启动应用程序。 - `tpterm`: 结束ATMI环境,终止应用程序。 4. 与请求TUXEDO SERVER有关的ATMI函数: - `tpcall`: 同步调用远程服务,等待响应。 - `tpacall`: 异步调用远程服务,不等待响应。 - `tpgetrply`: 获取异步调用的回复。 - `tpcancel`: 取消正在进行的异步调用。 - `tpgprio`: 设置线程优先级。 - `tpsprio`: 设置服务的优先级。 5. 请求错误处理有关的ATMI函数: - `tpstrerror`: 将错误码转换为可读的错误消息字符串。 - `tperrordetail`: 获取更详细的错误信息。 - `tpstrerrordetail`: 返回包含错误代码和详细描述的字符串。 TUXEDO的这些函数是构建高效、可靠的分布式应用程序的基础。通过熟练使用这些API,开发者可以实现高效的数据交换、安全的连接管理和灵活的错误处理机制,确保应用程序在复杂的企业环境中稳定运行。