gpt4 book ai didi

iphone - 通过 HTTP 发送 10,000 个 double 的最佳方式

转载 作者:行者123 更新时间:2023-12-01 17:35:15 25 4
gpt4 key购买 nike

我有一个收集 10,000 个 double 的客户端应用程序 (iPhone)。我想通过 HTTP 将此双数组发送到 appengine 服务器(java)。我正在寻找最好的方法来做到这一点。

最佳可以定义为易于编程和表示紧凑性的某种组合,因为数据量可能非常高。

我目前的想法是将整个 double 数组转换为字符串表示形式并将其作为 POST 参数发送,在服务器上解析字符串并转换回 double 数组。虽然看起来效率低下...

谢谢!

最佳答案

我认为您回答了您自己的问题 :) 要提防的大事是设备和服务器上的浮点表示之间的差异。如今,它们都将是 little-endian,(主要)符合 IEEE-754。但是,实现中仍然可能存在一些细微的差异,例如处理非正规和无穷大,但您可能会忽略它们而侥幸逃脱。我似乎记得 NEON 中的一些边缘案例(用于 iPhone 的 Cortex A-8)的处理方式与 x86 不同。

如果您确实以字符串形式发送,则最终会在十进制和二进制之间进行转换,并且可能会失去准确性。不过,这并不是那么低效 - 它只有 10,000 个数字。除非您期望数以千计的设备不间断地在您的服务器上传输这些数据。

如果您想在电汇和设备端提高效率,那么一种方法是以原始二进制形式发送 double 。在服务器上,将它们重新解析为 double 数 (Double.longBitsToDouble)。当你抓取数据时,确保你得到正确的字节序(当它出错时会很明显)。

关于iphone - 通过 HTTP 发送 10,000 个 double 的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5054375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com