phpwebsocket中一次仅一个连接

问题描述

我在玩PHPwebsocket。有没有办法一次只连接一个用户? 如果第二个用户尝试连接,则应自动断开连接,如果第一个用户空闲了给定的时间,则应断开连接,以便为新用户留出空间。 这可能吗?如果是这样,有人知道吗?     

解决方法

        当然,可以将用户数限制为一个用户。您必须查看usercount并决定接受还是不接受新连接。在代码中,它看起来像这样:
if($socket==$master){
  $client=socket_accept($master);
  if($client<0){ console(\"socket_accept() failed\"); continue; }
  else{ connect($client); }
}
您可以进一步进行if语句检查,如果usercount为0,那么您接受连接:
if($socket==$master){
  if(count($users) == 0){
    $client=socket_accept($master);
    if($client<0){ console(\"socket_accept() failed\"); continue; }
    else{ connect($client); }
  }
}
要断开静默用户的连接,每当用户向服务器发送消息时,我都会刷新用户的时间戳。现在,唯一要做的就是检查用户时间戳和当前时间之间的差异是否大于断开时间。如果是这样,踢他:)     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...