跨模块释放内存
- C/C++ code
进程里的线程是享用一个堆???那么全局变量呢???静态变量呢?? 是不是也是进程里的线程可以共享之????所以访问的时候需要lock.第二个问题:为什么在dll里分配内存不哟啊用new, 跨模块释放内存会引发很多的问题??可是new的底层也是GlobalAlloc啊,调用的还是api,干嘛会出错。。如果不用new,是不明智的,c++推荐用new。
[解决办法]
是
是 是
不用new就有问题? 楼主理解错了,是DLL里分配的,应该由DLL delete,除此之外别无禁忌。
[解决办法]
++
[解决办法]
知不知道这个释放谁完成的,自身释放其实是用的delete
void CWinThread::Delete()
{
// delete thread if it is auto-deleting
if (m_bAutoDelete)
delete this;
}
而不同模块的delete可能不兼容