是什么减缓了GKSession的网络吞吐量?

时间:2012-11-16 08:55:17

标签: objective-c ios networking real-time gksession

我实现了一个应用程序,根据Ray Wenderlich的tutorial关于GKSession和Matt Ghallagher的tutorial关于音频流的实时广播音乐从一个iphone到另一个。

一切都运作良好......直到我们决定用我们自己的用户替换扑克游戏UI。结果是突然网络吞吐量急剧下降。下面是服务器this is the profiler of the server

的分析器快照

以下是原始应用enter image description here

的客户端的快照

这里是应用程序客户端的快照,其中包含更新的UI(主机与旧主机相同): enter image description here

要记住的一件事是我们不只是改变了UI ..我们也改变了一些网络代码..这就是我认为减慢了一些东西(我做了很多性能测试)用户界面..消除所有的钟声和口哨,我得到同样的减速)..

任何想法?保持GKSession广播可用性的一些suggested减慢了一点......我确保在我的应用程序中不是这种情况..

更新的 在查看网络分析(使用仪器)后,似乎有一些未知过程存在大量网络活动。有没有办法检测到这个未知过程? 这是优秀应用的屏幕截图:enter image description here

以下是错误应用的屏幕截图:enter image description here

注意两者之间的区别:在一个其他中使用了比其他更多的网络活动吗?

1 个答案:

答案 0 :(得分:1)

原来我有两个不同的对象指向相同的GKSession实例变量..由于某些原因导致事情变慢......令人沮丧的是GKSession是如此不透明,因此任何调试都是非常值得猜测的。经验教训..我下次直接使用bonjour。