cjson的内存泄漏案例

1、当我们使用下面这些创建json对象时,需要用cJSON_Delete();释放,(当然,释放父JSON对象后,子JSON对象也会被释放)
2、多次释放同一内存空间
在recv_write_property函数中的data,在Equipment_reply函数已经释放了,因此不要再recv_write_property函数中再释放。
cjson的内存泄漏案例_第1张图片
cjson的内存泄漏案例_第2张图片
3、使用CJSON,若没有释放内存可能导致MQTT掉线(内存泄露)

使用udp开了个定时任务,每次发送消息给其他udp接收端,其他接收端接受到消息之后会回复一个消息(udp_recv_callback中接收),然后解析消息注意解析完成之后需要释放data空间,否则导致内存泄漏,我这里就表现出mqtt掉线。
cjson的内存泄漏案例_第3张图片
cjson的内存泄漏案例_第4张图片
cjson的内存泄漏案例_第5张图片

cjson的内存泄漏案例_第6张图片

cjson的内存泄漏案例_第7张图片
cjson的内存泄漏案例_第8张图片
cjson的内存泄漏案例_第9张图片

你可能感兴趣的:(STM32,udp,mqtt,stm32,单片机,json)