pbc
pbc copied to clipboard
pbc指针模式decode时出现context error
local data = {account= "robot1"} local savebuffer, savelength local function _callback(buffer, length) ---在这里直接decode就没问题 savebuffer = buffer savelength = length end --parser.register("test.proto") --test.proto: -- message test -- { -- required string account = 1; -- } protobuf.encode("test", data, _callback) protobuf.decode("test", savebuffer, savelength) ---这里出现context error
你不考虑一下我的lua-protobuf么?云风自己都不维护pbc了
你保证了 buffer 这个指针还是有效的吗?
这里 decode 传入的 buffer/length 隐含着 buffer 是一个 lightuserdata ,生命期需要自己维护。 如果维护不清楚,那么请转成一个 string 。
encode 的 callback 会在调用结束后,清理掉 callback 传入的指针对应的内存。
明白,谢谢!