Tencent / rapidjson

A fast JSON parser/generator for C++ with both SAX/DOM style API
http://rapidjson.org/
Other
14.19k stars 3.53k forks source link

在多进程中使用共享内存传输rapidjson时出现数据读取错误的问题 #2245

Open LEXUEYE opened 9 months ago

LEXUEYE commented 9 months ago

准备使用共享内存在两个进程间传输rapidjson对象数据,共享内存使用mmap进行映射,创建共享内存大小为0x80000字节,在上面new了一个Document和一个Allocator,将两者关联后,从进程A中copyfrom一个Document到共享内存中,然后从共享内存中copyfrom出来到进程B,发现两个进程中Document结构正常,Allocator结构也正常,就是Document中的member指针指向的位置错误了,进程B中指针指向了进程A的空间地址,在SetMembersPointer中使用了绝对地址,感觉有使用共享内存的必要,该问题能否看一下