首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

高速检测IP是否在线

2012-12-27 
快速检测IP是否在线我使用Ping,如果不在线,基本上都是500ms才出一个。有什么方法可以快速得到结果[解决办法

快速检测IP是否在线
我使用Ping,如果不在线,基本上都是500ms才出一个。有什么方法可以快速得到结果
[解决办法]
把timeout设置得低一些。

但是默认500毫秒是有讲究的。因为网络可能会有延迟,设想从你发出ping,到返回,如果需要501毫秒,那么即便它在线,也会视为不通。如果这个时间设置很小,那么误报率就会增大。因此默认是500毫秒。

你可以使用多个线程去ping多个地址,虽然每个还需要500毫秒等待,但是总时间却可以缩短。
[解决办法]
试试这个

        [DllImport("Iphlpapi.dll")]
        private static extern int SendARP(Int32 destinationIp, Int32 sourceIp, ref Int64 mac, ref Int32 length);

热点排行