应用程序如何立即知道网络的连接状态

当网络断开时,UC可以立即知道,MSN也能立即知道;

当网络重新已连接时,UC没有立即发现,MSN能立即发现。

为什么呢?MSN是如何立即知道网络状态的变化的呢?

 

google了一下,发现一篇相关的文章:http://www.flextheworld.com/2009/01/adobe-air-web-status.html/comment-page-1

它使用了每3s测试一次网络状态的办法,显然这没有实现“立即”,更可恨的是,它是用别人的网页(google的首页)来测试的;可能这人脑袋被驴踢过。

 

继续寻找答案,感觉是系统底层提供了这样的事件通知。

看一下这篇文章:http://blog.csdn.net/luozhenyu/archive/2009/04/27/4130223.aspx

是C#写的一个例子,基本原理是调用系统的API,当然是.net Framework 里的方法,检查网络连接的状态,至少这种检查是不需要真正连网的,所以循环检查是可以接受的。

 还有就是可以直接调用windows的API,可能是:InternetGetConnectedState函数

 

留下评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据