编程语言
首页 > 编程语言> > c# – 多长时间轮询wifi信号强度?

c# – 多长时间轮询wifi信号强度?

作者:互联网

理想情况下,我希望近乎实时地监控无线网络的信号强度,比如说每100毫秒,但是如此高的频率可能是过度的.

我正在使用Managed Wifi库来轮询RSSI.我实例化一个WlanClient客户端= new WlanClient();一次并重新使用该客户端每隔一秒左右测量信号强度(但我想更频繁地做):

foreach (WlanClient.WlanInterface wlanInterface in _client.Interfaces)
{
    Wlan.WlanBssEntry[] wlanBssEntries = wlanInterface.GetNetworkBssList();
    foreach (Wlan.WlanBssEntry wlanBssEntry in wlanBssEntries)
    {
        int sigStr = wlanBssEntry.rssi; // signal strength in dBm
        // ...
    }
}

什么是最快的实际轮询延迟,这是测量信号强度的最佳方法吗?

解决方法:

我担心最小的轮询延迟会随着你的驱动程序堆栈而变化,但我怀疑周围的接入点数量. WiFi是基于时隙的协议.

根据我的(有限)经验,1秒的间隔大约是正确的,您将看到站点列表并不总是完整的(即1次扫描时丢失的站点,下一次扫描时丢失).

is this the best way to measure signal strength?

取决于,但你期望它改变多快?四处走动时,信号的变化不会超过一秒钟.

标签:c,wifi,signal-strength
来源: https://codeday.me/bug/20190710/1421561.html