异步套接字服务器和AS3 Flash应用程序-用户断开连接未处理
本文关键字:用户 断开 连接 未处理 应用程序 Flash 套接字 服务器 AS3 异步 | 更新日期: 2023-09-27 18:08:52
我有两组代码给你看,都可以在这里的PasteBin:
首先是我的c# Socket服务器:http://pastebin.com/wvT4f19m
第二是我的代码在我的AS3应用程序:http://pastebin.com/bKvabFSP在代码中,我要做的是一个简单的发送/接收,看看会发生什么。如果我在2个实例中打开我的应用程序,c#套接字服务器注册它们存在,一切都很好!如果我关闭我的一个实例,c#服务器仍然认为用户存在,套接字没有关闭。
我的代码是基于下面的例子:http://msdn.microsoft.com/en-us/library/fx6588te.aspx
在MS示例中,以下几行被添加到SendCallBack()函数中:
handler.Shutdown(SocketShutdown.Both);
handler.Close();
这些肯定会关闭套接字,这是我不希望发生的事情。
我是套接字编程的新手,我花了相当多的时间来玩MS的例子,让它大致按照我需要的方式工作。唯一的问题是确认用户断开连接,以便我可以从我在服务器中设置的客户端列表中删除用户。此外,当确认断开连接时,我可以通知其他客户端。
谢谢!
每次尝试向用户发送数据时,我都会快速检查传输是否成功/轮询用户,如果失败,则将用户从服务器中删除。
关闭套接字不会影响侦听器,它只会影响当前连接。你为什么说这不是你想要的?
听起来这正是你想要的。