我正在寻找一种哈希表的开源 C 实现,它将所有数据保存在一个内存块中,因此可以轻松地通过网络发送数据。
我只能找到为添加到其中的每个键值对分配小块内存的内存。
预先非常感谢您的所有投入。
编辑:它不一定需要是哈希表,无论键值对表可能会做什么。
序列化此类数据结构的次数(通过网络发送也是序列化)与使用此类数据结构(在程序中)的次数相当低。因此,大多数实现更多地关注速度而不是“可能更容易序列化”方面。
如果所有数据都位于一个分配的内存块中,则对该数据结构的大量操作将有点昂贵,因为您必须:
- 在添加操作上重新分配内存
- 最有可能在删除操作上压缩/真空(这样你最喜欢的一个块就很密集并且没有孔)
无论如何,大多数网络操作都会被缓冲,只需迭代键并发送键+值即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)