我目前正在为iphone开发一个聊天客户端。在服务器端有一个带有Socket.IO的node.js,在iPhone上有一个Socket.IO客户端( https://github.com/DanLite/socket.IO-objc )
我的问题是: iPhone电池是否会受到打开的TCP连接以及3-4分钟内无法发送或接收数据的影响?
哪个更适合电池续航时间?一个常量tcp连接或多个HTTP请求。
谢谢
编辑:我有一个聊天+其他功能,如(更改姓名,查看好友状态,编辑设置)
编辑2:看起来像是使用tcp连接的WhatsApp。
发布于 2012-01-12 04:05:55
当TCP连接打开时,双方都拥有有关它的信息(远程ip:端口,本地ip:端口)。这些信息仅仅是内存中的一个数据结构。只要没有接收到RST数据包或发生超时,连接就被认为是打开的。
当你通过连接发送数据时,你开始消耗CPU,并迫使底层的无线移动网络模块发送信号,从而消耗电池。
这就是为什么尽可能长时间地保持TCP连接,并且更喜欢批处理而不是聊天通信(组合几个应用程序消息)的原因。
另一方面,你应该做好准备,当网络复盖差的情况下,你将不得不不断地重新打开TCP连接,从而消耗电池。
https://stackoverflow.com/questions/8817047
复制相似问题