MINA SESSION问题

发布于 2021-11-15 07:51:03 字数 531 浏览 827 评论 3

服务端 MINA  服务端定义了一个定时器

客户端 MINA

两个客户端在同一台PC上,当两个客户端都连接服务后,其中一个先发送完成。然后触发sessionClosed 则 定时器被关闭了,没有发完的客户端阻塞了。 请帮忙解决下。

@Override
	public void sessionClosed(IoSession session) throws Exception {
		map.remove(session.getId());		
		ch.getTd().cancel();//关闭定时器
		session.close(true);
		log.debug("客户端关闭服务成功! "+session.getId());
	}

如果不在sessionClosed中 关闭定时器,客户端断开连接后 定时器还在运行,有什么办法可以解决此问题。

 

 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

为你鎻心 2021-11-19 13:04:07

mina客户端,没有都建立新的端口,这个端口在什么时候关闭,或者说需要关闭吗?

明媚如初 2021-11-16 23:03:51

你的定时器是全局的吗???如果是,那怎可以让一个客户端close就关闭了呢?

如果你的定时器只是对某个客户端有效,那么在这关闭没有问题

ps:定时器是全局的,就算没有客户端连接也不应关闭定时器

小情绪 2021-11-15 20:31:35

你的定时器是全局的吗???如果是,那怎可以让一个客户端close就关闭了呢?

如果你的定时器只是对某个客户端有效,那么在这关闭没有问题

ps:定时器是全局的,就算没有客户端连接也不应关闭定时器

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文