0
我在多线程应用程序中使用tracelistener远程登录消息,但该应用程序会造成内存溢出。跟踪监听器 - 创建内存溢出
对于测试,我创建了10,000个线程,并尝试使用TraceData函数记录消息。
.Net框架是否为每个调用TraceData的对象创建一个对象,这会导致内存溢出?
我在多线程应用程序中使用tracelistener远程登录消息,但该应用程序会造成内存溢出。跟踪监听器 - 创建内存溢出
对于测试,我创建了10,000个线程,并尝试使用TraceData函数记录消息。
.Net框架是否为每个调用TraceData的对象创建一个对象,这会导致内存溢出?
10,000个线程:每个线程将分配一个(默认)1MB堆栈空间。因此他们需要10GB RAM,这在32位进程中是不可能的(并且可能会破坏64位上的可用RAM /页)。
跟踪没有关系。
附加信息:关于Windows上线程(和进程)限制的伟大新文章,由Mark Russinovich撰写。请注意最后一段。 “Pushing the Limits of Windows: Processes and Threads”
我们可以创建的最大线程数是多少? – somaraj 2009-07-06 09:27:21