一种利用c++17特性对Protobuf库改进方法
摘要:
本发明涉及证券交易技术领域,具体来说是一种利用c++17特性对Protobuf库改进方法,方法如下:改写内存池Arena,在其中添加私有成员alloc,所述私有成员alloc是一个指向内存池Arena父内存池的指针,使得未来内存池Arena空间不足时通过父内存池获取到可用的内存空间,相对应的,内存池Arena在构造的时候就能获取其的父内存池;通过将这个内存池Arena的私有成员alloc指针传入,将其中系统默认的新内存申请方式改为从这个私有成员alloc指针中分配。本发明同现有技术相比,其优点在于:进一步完善了Protobuf中的Arena内存池的逻辑;利用C++17的新类型std::pmr::string,解决了普通string中字符串部分不能存储在指定内存空间下的问题,提升了字符串内存分配的效率,减轻了内核态调用的开销。
0/0