.NET EXE和DLL之间的堆栈/堆差异

ken*_*nny 2 .net c# windows dll

很长一段时间我对这个问题感到困惑:

.NET EXE和DLL文件都有地址空间.我知道他们都有代码空间和全局变量空间.但我想知道DLL是否有自己的堆和堆栈空间.

Dav*_*nan 6

该进程拥有堆.每个线程都拥有自己的堆栈.当EXE调用DLL中的函数时,使用相同的堆栈,因为函数调用在同一个线程中.

另一个要点是进程具有加载EXE和DLL的地址空间.