在socket连接过程中,一些客户端因为异常的原因可能已经不在了,所以我们需要定期清除,来避免一些内存的浪费。
1、添加client变量方法判断是否过期
每一次接收到新的消息更新pingEndTime
2、添加定时器检测client是否过期
3、测试
等个10秒=======
发现调用了两次deleteClientList。
因为在调用clinet.close()时,会调用deleteClientList方法,所以去掉
再调一下clint_socket.js
好了 搞定了。
把pingCloseMins改为10分钟
ok!
对应的GitHub地址为:GitHub
该系列的其他篇幅:
独立游戏开发学习(一)
独立游戏开发学习(二)-Stable Diffusion的运用
独立游戏开发学习(三)-联机服务器的搭建tcp篇
独立游戏开发学习(四)-编写tcp交互中间层