如何通过elisp中的make-network-process创建套接字侦听服务器? (举个例子)

时间:2012-12-15 01:48:21

标签: elisp

我读了elisp的网络服务器manul,但我找不到写一个套接字监听服务器。功能“make-network-process”的一些难题:

  1. 如何绑定服务器?
  2. 如何接受客户端连接并创建新的网络进程?
  3. 如何通过新创建的网络流程与客户端流程进行通信?
  4. 是否有关于网络服务器的代码段源代码?

1 个答案:

答案 0 :(得分:1)

make-network-process将创建一个侦听服务器,将其绑定到给定端口。为此,您只需在关键字参数中指定:server t

将自动接受客户端连接,并自动创建新的网络进程。 Elisp代码可以在新连接进入时设置,因为process-sentinel函数会在发生这种情况时被调用。

与客户端的通信通过在接受客户端连接时创建的网络进程进行。此过程将像任何其他过程一样使用,即通过process-filterprocess-send-string,...

您可以查看server.el代码(C-h f server-start应该是一个很好的切入点),这是一个相当简单的例子。