第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备

文章目录

  • [第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备](#第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备)
  • [当前 `TCP` 设备](#当前 TCP 设备)
  • [`TCP` 设备的 `USE` 命令](#TCP 设备的 USE 命令)

第二十四章 TCP 客户端 服务器通信 - 当前 TCP 设备

当前 TCP 设备

可以使用 %SYSTEM.TCPDevice方法返回当前 TCP 设备的 IP 地址和端口号。可以使用 Help() 方法列出这些方法,如下所示:

java 复制代码
  DO $SYSTEM.TCPDevice.Help()

可以通过在 Help() 中指定方法名称来显示有关特定方法的信息,如以下示例所示:

java 复制代码
  DO $SYSTEM.TCPDevice.Help("LocalAddr")
java 复制代码
IMP>DO $SYSTEM.TCPDevice.Help("LocalAddr")
method:class的描述 LocalAddr:%SYSTEM.TCPDevice
 
LocalAddr(Format:%Integer=0)
Get local IP address of current TCP device.<br>
<br>
<b>Parameters:</b> <br>
<b>Format</b> - The format of address to be returned. If this argument is omitted the default value is 0. The value could be:<br>
<ul><li>0: in text format,  'dotted' decimal string for IPV4, colon-hex address string for IPV6.</li>
<li>1: in binary format, 4 character length for IPV4, 16 characters for IPV6.</li></ul>
<b>Return:</b> <br>
Returns the local IP address associated with the TCP device. It could be in binary or text format depends on the <b>Format</b> parameter.
For binary format the IP address is in Network order.<br>
If the current device ($IO) is not a TCP device, it gets <FUNCTION> error.<br>
If the TCP device is in 'listening' state, the IP address would be all zeros (INADDR_ANY).<br>
 

TCP 设备的 USE 命令

从客户端或服务器发出的 USE 命令使可以准备使用之前打开的 TCP 连接发送或接收数据。它具有以下语法(必须指定冒号,如图所示):

java 复制代码
USE devicename:(::mode:terminators)
  • devicename - |TCP| 形式的字符串后跟一些数字。设备名称的数字部分称为设备标识符。如果在 OPEN 参数中未指定端口号,则此设备标识符必须是唯一的五位 TCP 端口号。如果在 OPEN 参数中指定了端口号(这是首选做法),则该设备标识符可以是任何唯一的数字,只要单个作业使用的所有 TCP 设备名称都是不同的。
  • mode - 可选------USE 支持与 OPEN 相同的模式参数。请参阅"TCP 设备的 OPENUSE 命令关键字"。
  • terminators - 可选 --- 最多八个用户终止字符的列表,这些字符将终止 TCP 绑定设备上的读取。同时指定 T 模式和用户终止符是没有意义的,但如果这样做,T 模式将被忽略。

最简单的 USE 形式从 OPEN 命令中获取其模式和终止符参数,如以下示例所示:

java 复制代码
   USE "|TCP|4"

可以在设备打开后替换、添加或删除模式参数和用户终止符。

要替换 OPEN 中指定的参数,请在 USE 中指定替换值。在以下示例中,USE 命令将 OPEN 模式替换为 PSTE 模式并关闭所有用户终止符:

java 复制代码
   USE "|TCP|4":(::"PSTE")

增加或删除OPEN中指定的模式参数,用"+"号引入将要开启的模式参数,"-"号引入将要关闭的模式参数。如果不指定"+"或"-",则新的模式参数集将替换现有模式参数。在以下示例中,USE 命令关闭 Q 模式(立即发送)并打开 W 模式(等待)。它使模式字符串的其余部分保持不变:

java 复制代码
   USE "|TCP|4":(::"-Q+W")

在以下示例中,USE 命令保留模式字符串不变并指定一组新的用户终止符。

java 复制代码
   USE "|TCP|4":(::"+":$CHAR(3,4))
相关推荐
R_.L20 分钟前
网络 :数据链路层
网络
网硕互联的小客服1 小时前
服务器经常出现蓝屏是什么原因导致的?如何排查和修复?
运维·服务器·stm32·单片机·网络安全
witton1 小时前
Go语言网络游戏服务器模块化编程
服务器·开发语言·游戏·golang·origin·模块化·耦合
成都极云科技2 小时前
成都算力租赁新趋势:H20 八卡服务器如何重塑 AI 产业格局?
大数据·服务器·人工智能·云计算·gpu算力
喜欢吃豆2 小时前
从零构建MCP服务器:FastMCP实战指南
运维·服务器·人工智能·python·大模型·mcp
刘阿宾2 小时前
【华为昇腾|CUDA】服务器A6000显卡部署LLM实战记录
服务器·华为·语言模型·gpu算力·kylin
海外空间恒创科技2 小时前
恒创科技:香港站群服务器做seo站群优化效果如何
运维·服务器·科技
搬码临时工2 小时前
内网服务器怎么设置公网远程访问? windows桌面连接和Linux自带SSH外网异地跨网用完整步骤教程
运维·服务器·ssh
珹洺2 小时前
计算机网络:(八)网络层(中)IP层转发分组的过程与网际控制报文协议 ICMP
tcp/ip·计算机网络·智能路由器
cat_with_cat3 小时前
Linux网络:UDP socket创建流程与简单通信
linux·网络·udp