欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 第二十八章 TCP 客户端 服务器通信 - JOB命令示例

第二十八章 TCP 客户端 服务器通信 - JOB命令示例

2025/4/19 13:03:59 来源:https://blog.csdn.net/yaoxin521123/article/details/143960536  浏览:    关键词:第二十八章 TCP 客户端 服务器通信 - JOB命令示例

文章目录

  • 第二十八章 TCP 客户端 服务器通信 - JOB命令示例
    • JOB命令示例

第二十八章 TCP 客户端 服务器通信 - JOB命令示例

JOB命令示例

以下示例显示了一个非常简单的并发服务器,只要它检测到来自客户端的连接,就会产生一个子作业。 JOB指定一个并发服务器位开关值(值16)并通过符号表(值1):16+1=17

serverSET io="|TCP|1" SET ^serverport=7001 OPEN io:(:^serverport:"MA"):200 IF ('$TEST) { WRITE !,"Cannot open server port" QUIT }ELSE { WRITE !,"Server port opened" }
loopUSE io READ x ; Read for accept USE 0 WRITE !,"Accepted connection" JOB child:(:17:io:io) ;Concurrent server bit is on GOTO loop
childWRITE $JOB,! ; Send job id on TCP device to be read by client QUIT
clientSET io="|TCP|2" SET host="127.0.0.1" OPEN io:(host:^serverport:"M"):200 ;Connect to serverIF ('$TEST) { WRITE !,"cannot open connection" Quit }ELSE { WRITE !,"Client connection opened" USE io READ x#3:200 ;Reads from subjob }IF ('$TEST) { WRITE !,"No message from child" CLOSE io QUIT }ELSE {USE 0 WRITE !,"Child is on job ",x CLOSE io QUIT }

子进程使用继承的TCP连接将其作业ID(在本例中假设为3个字符)传递回客户机,之后子进程退出。客户端打开与服务器的连接,并在打开的连接上读取子任务的作业ID。在本例中,变量主机的IPv4格式值“127.0.0.1”表示到本地主机的环回连接。如果host设置为服务器的IP地址或名称,则可以在与服务器不同的机器上设置客户端。

原则上,子服务器和客户端可以进行扩展通信,多个客户端可以同时与服务器的各自子服务器进行通信。

请注意,这个简单的示例不包含用于检测和处理断开或读取操作失败的逻辑。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词