第二十六章 TCP 客户端 服务器通讯 - $ZB 和 READ 下令

[复制链接]
发表于 2025-12-23 01:49:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
第二十六章 TCP 客户端 服务器通讯 - $ZB 和 READ 下令

$ZB 和 READ 下令

$ZB 生存制止读取的字符。该字符可以是以下之一:


  • 制止字符,比方回车
  • 固定长度 READ x#y 的第 y 个字符
  • READ *X 的单个字符
  • 定时读取逾期后的空字符串
  • 转义序列
  • 请注意,假如一个字符串以 CR LF 末了,则只有 CR 会放在 $ZB 中。
TCP 装备的 WRITE 下令

在使用 OPEN 和 USE 创建毗连后,WRITE 下令将数据从客户端或服务器发送到 TCP 装备。
语法如下:
  1. WRITE x
  2. WRITE !
  3. WRITE #
复制代码
WRITE怎样工作

WRITE x 在创建毗连后将 x 从客户端或服务器发送到缓冲区。
WRITE !和 WRITE # 不表现换行和换页。相反,它们告诉 IRIS 革新缓冲区中生存的全部字符,并通过网络将它们发送到目的体系。
可以使用 %SYSTEM.INetInfo类的 TCPStats() 方法确定当前 TCP 毗连实验的写入次数。
WRITE 修改 $X 和 $Y

IRIS 将缓冲区中的字符数存储在 $X 特殊变量中。
ASCII 字符 <return> 和<line feed> 不包罗在此计数中,由于它们不被视为记录的一部分。用 WRITE 革新缓冲区!将 $X 重置为 0,并将 $Y 的值增长 1。使用 WRITE # 革新缓冲区将 ASCII 字符 <form feed> 作为单独的记录写入,并将 $Y 重置为 0。
WRITE下令错误

在以下任何环境下,都大概收到 <WRITE> 错误。


  • 假如凌驾最大字符串巨细(1024 个字符)而不革新缓冲区。
  • 假如在此中没有字符时革新写入缓冲区(TCP/IP 忽略长度为 0 的记录)。
  • 假如在服务器收到来自客户端的毗连哀求之前从服务器向客户端发送 WRITE 下令。 ( IRIS 在服务器上产生 <WRITE> 错误。)
WRITE控制下令

TCP 绑定装备支持一系列具有 WRITE *-n 语法的控制下令。


  • WRITE *-2 - 在当前毗连到客户端的服务器模式会话上,此下令会断开与会话的毗连。要担当新会话,可以在装备上实验新的 READ 下令。
  • WRITE *-3 - 将任何缓冲的输出发送出 TCP 毗连;即,对输出缓冲区中的数据实验 TCP SEND 操纵。假如数据是压缩(/GZIP)流数据,*-3 发送数据时不标记压缩端点。将 $X 重置为 0。将 $Y 加 1。假如没有缓冲输出,则此下令不实验任何操纵。
  • WRITE *-99 - 发送压缩 (/GZIP) 流数据。起首用压缩端点标记输出缓冲区中的数据,然后通过对输出缓冲区数据实验 TCP SEND 操纵来发送此压缩流数据。
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表