- 博客(6)
- 资源 (6)
- 收藏
- 关注
原创 简单的Memory leak跟踪(四)参考代码、组织和几个问题的讨论
参考代码摘录了相关的代码,在小生的CSDN资源站里,0分下载,链接如下。http://download.csdn.net/detail/noslopforever/4568056转载请使用本资源连接。Tracer的变种Tracer稍加变化,就可以记录更丰富的信息。例如,首先不用hash了,直接使用一个list来记录,free时不再从hash里删除了,list只会越变
2012-09-13 16:24:33 1916
原创 简单的Memory leak跟踪(三) 方案2:Dbghelp
dbghelp这个方案比较复杂,速度也比较慢,不过用在Trace的场合也不算太糟糕。原理是,dbghelp.lib、dbghelp.h提供了一大堆获取当前调用栈信息(ESP、EBP),并通过这些调用栈,配合上相应模块的pdb文件,得出当前的调用模块(dll)、调用函数、调用行和指令。具体的原理就不再废话了,网上dbghelp的使用方面的文档也很多,贴几个参考:HOWTO: Dump C
2012-09-13 11:31:52 1877
原创 简单的Memory leak跟踪(二)不想Tracer的场合
上篇文章我们大概介绍了一下DEBUG_NEW的原理和实现。上篇的TracerFileLn,我们用一个hash_map来提供了Trace功能。这个中间可能会存在一个潜在的陷阱,在进入下章前,我们需要把这个潜在的陷阱给灭了。如果重载C++原始的operator new,也加上Trace会如何?void* operator new(size_t InSize){
2012-09-13 11:00:18 1531
原创 简单的Memory leak跟踪(一) DEBUG_NEW方案
前言C++编码中Memory Leak是一个很讨厌却又挥之不去的话题,最近由于引入了GC,为了验证GC是否确实正常free了内存,于是先提供了一个内存分配的Tracer。与分配器不同,分配器主要解决的是两个问题:1、性能,池式分配往往能提供比直接Virtual Allocation快得多的效能。据说这一原则在Vista后无效了,因为微软修改了VA的实现机制,只是听说,没有实际测试过。
2012-09-13 10:44:58 4709
原创 极致
好久没有分享心得了。最近感觉自己是江郎才尽,数学到用时方恨少啊。这几个月,UE4出了,CE3也有新视频流出了,页游和手游越来越火了,3D页游也如火如荼了。时代变化太快,总感觉自己越来越落后了……UE4的GI,很多人已经分析或者给出实现了。私以为,UE4最优秀的远远不是一个GI能覆盖的了得。CE3说自己几年前就能超越UE4,可是图形上的超越并不是毫无代价的。CE3确实能在现有的平
2012-09-02 20:58:43 1423
原创 自醒录(一)
现在这个项目可能算是自己第一次真正意义上“带队”吧,感觉确实跟之前一个人冲锋陷阵有很大不同。到上周,项目的第一个程序版本应该已经算是结束了,有几个遗留问题,但是应该无伤大雅。龙骨本身还是优雅的,船体上的漏洞总有补上的一天。由于只是一个程序功能版本,整体看起来还很弱小,而且现在还处于保密期,所以截图什么的就先不放了,策划和美术在接下来的几个星期时间里会把它变得更好。但那跟我们已经没有关系了,
2012-09-02 19:58:19 1506
DX网格转换器1.0版
2009-02-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人