Gateway客户端断开链接后 在服务端设置的定时器还一直运行

xyle

Gateway客户端断开链接后  在服务端设置的定时器还一直运行,请问如何关闭?

2103 1 0
1个回答

six

我这有个办法,
把定时器id存在session里,然后onClose的时候根据id删除定时器
$_SESSION = Timer::add(.........);
 
public static function onClose($client_id) {
    if (isset($_SESSION)) Timer::del($_SESSION);
}

  • xyle 2019-07-04

    谢谢,目前用这个方法解决了。但有个问题请教,链接都关闭了,定时器为什么不自动关闭,还一直发消息?

  • six 2019-07-04

    为啥连接关闭了定时器就关闭呢?二者根本没有关联吧

  • xyle 2019-07-04

    这样的,定时器是对链接发消息的,链接关闭了 定时器就没有用了

  • six 2019-07-04

    你这个有点夸张了,又不是人工智能,智能分辨业务逻辑

年代过于久远,无法发表回答
🔝