一个DLL文件中记录的堆栈大小总是为零,因为DLL只是为进程服务的,调用DLL模块时,使用的是进程的堆栈。对于单线程的应用程序,进程只有一个堆栈,就是进程的主线程使用的堆栈。对于多线程的应用程序,每个正在运行的线程都有自己的堆栈。在多线程的情况下,DLL模块在那个线程中被调用,则DLL就使用该线程的堆栈。但所有这一切都还是在同一进程空间中进行的。如上所述,是不是在Dll中只定义局部变量就可以被多个线程调用,而不用加保护?