悉野小楼

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

记录一次C++内存泄露的检测过程

线上游戏长时间运行后, 占用内存比以前大很多, 发现游戏对象也得变多很多.主程尝试从最近改动过的代码检测, 做了小改动, 更新上线, 内存还是不断增加.
我提出用服务端根据聊天做个GM命令, 输出当前对象个数信息到日记. 更新上线, 手动输入gm命令, 比较几次日记, 方现对象是变多, 但不知道是哪个, 我修改输出内容, 按类型输出对象个数, 后面比较发现buff对象明显增多.
因为最近策划配置了很多dot的buff. 再修改日记输出信息, 如果是buf类型, 输出主人是否为空, 及主人的id,
后面内网测试, 发现多出来的buff的主人为空, 主人已经释放, buff对象没释放, 检测buff处理逻辑, 发现有一段buff从队列中取出, 但最后没释放, 加了一行buff->Dispose(); 后就解决了

posted on   悉野  阅读(10)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示