Ios 游戏套件延迟

Ios 游戏套件延迟,ios,networking,gamekit,gksession,Ios,Networking,Gamekit,Gksession,我对GKSessions有以下问题: 在客户机/服务器应用程序中发送数据时,有时会出现巨大的延迟(3-4秒,有时高达10秒) 如果服务器在延迟期间发送(比如说)10个数据包,那么这10个数据包将在客户端上一次全部接收到。奇怪的是,服务器在延迟期间仍然从客户端接收数据包 这种延迟在WiFi网络中似乎更糟糕,但在蓝牙网络中也会发生 还有其他人在使用gamekit时遇到过这样的延迟峰值吗? 这个问题的根源是什么?我一直在使用gamekit和gksession。我总是使用Peer2Peer模式,尽管有些

我对GKSessions有以下问题: 在客户机/服务器应用程序中发送数据时,有时会出现巨大的延迟(3-4秒,有时高达10秒)

如果服务器在延迟期间发送(比如说)10个数据包,那么这10个数据包将在客户端上一次全部接收到。奇怪的是,服务器在延迟期间仍然从客户端接收数据包

这种延迟在WiFi网络中似乎更糟糕,但在蓝牙网络中也会发生

还有其他人在使用gamekit时遇到过这样的延迟峰值吗?
这个问题的根源是什么?

我一直在使用gamekit和gksession。我总是使用Peer2Peer模式,尽管有些人不鼓励。我从未经历过像你描述的那样的延迟

您使用GKSendDataReliable还是GKSendDataReliable发送?试着切换到另一个,看看它是否改变了什么。如果您使用的是GKSendDataReliable,则发送设备将在发送下一条消息之前等待来自接收器的“已接收”消息。这可能就是问题所在

在您的测试设备上:是否有任何东西正在运行,可能会淹没网络

我正在测试一个基于多人游戏套件的游戏,如果我有几个活动设备,那么突然一些设备会完全停止,我需要硬重启(完全关闭并重新启动)它们,使它们重新工作

如果您一直遇到麻烦,您可能想尝试一种更低级的api:dns sd


我希望你能成功,祝你好运

有显示延迟的方法吗?@zeiteisen没有:你必须自己写。发送一个带有时间戳的ping消息,另一方用包含相应ping中的时间戳的pong消息进行响应。根据我的经验,可靠和不可靠消息的延迟可能不同。