套接字客户端检查数据时套接字服务器是“命中”吗?

时间:2013-03-25 12:52:47

标签: php sockets lua

我已经设置了一个每秒写入套接字的PHP服务器。

while(1) {
  $message = "Hello, World!";
  socket_write($socket, $message, strlen($message));
  sleep(1);
}

然后我有一个Lua客户端(Corona SDK),每1/10秒检查一次套接字数据:

timer.performWithDelay(100, function() sock:receive() end, 0) end

我的问题是:每次袜子服务器都“点击”:运行了receive()吗?或者sock:receive()只检查本地缓冲区?

重新解释一个问题:服务器是否会更频繁地运行sock:receive()?或者它完全不受此影响?

1 个答案:

答案 0 :(得分:0)

不,套接字不会“命中”服务器。如果可能,您可以在服务器端运行Wireshark,以证明当客户端调用接收或读取等内容时不会发送任何内容。与客户端交换少量数据以设置套接字,但是,一旦设置套接字,在阅读时不会从客户端发送任何内容。

Beej's Guide

中提供了一些背景信息