bytedance / bytedance/sonic-cpp

关于writerbuffer初始化Reserve和Grow的长度

Open
#115 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
976
Forks
127
PR merge metrics
No merged PRs in 30d

Description

constexpr size_t kExpectMinifyRatio = 18;
size_t estimate = node_nums * kExpectMinifyRatio + 64;
wb.Reserve(estimate);

inc_len = str_len * 6 + 32 + 3;
wb.Grow(inc_len);
想问一下,SerializeImpl这个函数里,writerbuffer初始化的长度和Grow的长度是以什么作为考量的,代码里的这些数字代表什么含义呢?最近执行代码的时候发现这里的内存分配感觉有些问题,

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.