这个问题困扰了我很久:
.NET EXE 和 DLL 文件都有地址空间。我知道他们都有代码空间和全局变量空间。但我想知道 DLL 是否有自己的堆和堆栈空间。
最佳答案
进程拥有堆。每个线程都拥有自己的堆栈。当 EXE 调用 DLL 中的函数时,使用相同的堆栈,因为函数调用在同一线程中。
要说明的另一点是进程具有加载 EXE 和 DLL 的地址空间。
关于c# - .NET EXE 和 DLL 之间的堆栈/堆差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5692703/