我正在开发一个
Windows Phone应用程序,通过wifi与家庭局域网上的服务器进行通信,我遇到了一个显示停止:局域网内一个微小的HTTP请求的平均往返时间是600-800ms.
这仅适用于独立手机.如果手机连接到运行Zune的PC,则手机开始通过Zune通话,响应时间从600ms降至20ms(!).
我写了一个小的repro程序,每隔100ms发送一次HTTP请求并运行Wireshark跟踪.
跟踪显示服务器立即响应.电话延迟了请求,一次发送三到五个请求,大约每秒一次.
更多信息:
我的程序使用HttpWebRequest而不是WebClient.
我试图为每个请求生成线程,没有运气.
这发生在WP7版本和芒果上.
同样的事情是我跑掉我的工作或家庭Wifi.
在Mango中使用套接字API的低级实现表现出相同的行为.
我在App Hub上看到过同样问题的其他帖子.请帮助澄清为什么会这样.
解决方法
也许另一个实验会有所帮助手机充电并使用WiFi发送信息.我怀疑这种批量是节省电池功能的结果.