文件名称:进程退出、dll卸载、静态成员析构的Crash
文件大小:5KB
文件格式:RAR
更新时间:2014-07-20 13:52:12
进程退出 dll卸载 静态成员析构
进程退出时(调用了 return 0; 之后CRT析构了全局对象,然后调用ExitProcess)dll中的静态成员并未在ExitProcess之前析构,而是exe通知dll detach之后再析构的。ExitProcess的时候,系统会强制回收一些new出来的堆区空间,如果这之后dll中的静态变量还会 引用到这些空间,则会出现内存不可读的错误。
【文件预览】:
dll
----log()
--------log.h(332B)
--------log.vcproj(4KB)
--------log.cpp(59B)
----dll.sln(2KB)
----exe()
--------exe.vcproj(4KB)
--------exe.cpp(84B)
----dll()
--------dll.vcproj(4KB)
--------dll.h(706B)
--------dll.cpp(129B)