快速检测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);