MemoryModulePP icon indicating copy to clipboard operation
MemoryModulePP copied to clipboard

MmpTls存在内存泄漏,大量线程同时加载dll存在冲突

Open woowloop opened this issue 1 year ago • 1 comments

  1. MmpTls在线程开始时分配内存,线程结束时并未释放。
  2. LPVOID buffer = ReadDllFile(R"(Test.dll)"); HMODULE hModule = nullptr; auto status = LdrLoadDllMemoryExW(&hModule, nullptr, 0, buffer, 0, L"", nullptr); LdrUnloadDllMemory(hModule); 如以上测试代码,多个线程同时执行就会出错,在LdrLoadDllMemoryEx和LdrUnloadDllMemory中加上锁后,有所改善,但仍有其他崩溃。

woowloop avatar Nov 19 '24 02:11 woowloop

你好,感谢反馈。在实现功能时确实没有考虑多线程安全。

bb107 avatar Nov 19 '24 16:11 bb107