CLISP 中几行代码就可以实现的客户端、服务端套接字通信

首先,启动两个 CLISP ,为了便于区分,服务端我用 EMACS 启动 CLISP,客户端直接在终端中启动 CLISP,服务端需要先执行两条语句:

(defparameter my-socket (socket-server 4321)) 

(defparameter my-stream (socket-accept my-socket))  

第一句创建一个端口为4321的套接字服务端。

第二句定义 my-stream 来收发消息

截图如下:

101257_oVGt_219279.png

然后在终端窗口启动一个 CLISP 作为客户端,在客户端中执行如下命令:

(defparameter my-stream (socket-connect 4321 "127.0.0.1")) 

截图如下:

101615_VSrZ_219279.png

这条语句用来连接到服务端启动的端口上。

这时就可以进行通信了,比如在客户端输入命令:

(print "Yo Server!" my-stream) 

(print "你好,服务端!" my-stream)

然后在服务端输入命令:

(read my-stream)
(read my-stream)

就可以收到来自客户端的信息,如下图所示:

102126_xlRR_219279.png

同样地,在服务端也可以向客户端发送信息,使用类似的语句,截图如下:

102357_o4xs_219279.png

本文例程来自《Land of Lisp》

转载于:https://my.oschina.net/freeblues/blog/287849

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值