C# 为什么大型对象堆会增长而不是抛出异常?
在前面的一个问题中,我问了。我仍然看到这些问题,但现在我试图弄清楚为什么LOH的大小似乎在增长和收缩,但我仍然看到OutOfMemoryExceptions,这与其他人报告的LOH碎片化的情况相符C# 为什么大型对象堆会增长而不是抛出异常?,c#,.net,memory-management,fragmentation,large-object-heap,C#,.net,Memory Management,Fragmentation,Large Object Heap,在前面的一个问题中,我问了。我仍然看到这些问题,但现在我试图弄清楚为什么LOH的大小似乎在增长和收缩,但我仍然看到OutOfMemoryExceptions,这与其他人报告的LOH碎片化的情况相符 为什么一个对StringBuilder.EnsureCapacity的调用会为我抛出OutOfMemoryException,而另一个来自其他地方的调用会导致LOH的大小不断扩大(根据性能计数器,LOH正在增长和缩小)?我不确定,但我会尝试两种方法: 检查应用程序中已分配的非托管内存,并使用GC.Ad
为什么一个对StringBuilder.EnsureCapacity的调用会为我抛出OutOfMemoryException,而另一个来自其他地方的调用会导致LOH的大小不断扩大(根据性能计数器,LOH正在增长和缩小)?我不确定,但我会尝试两种方法:
编辑:第三种方法可能是创建更多的appdomains,并在这些额外的appdomains中处理这些大问题。我转到了原始文章,并在那里发布了我认为可能是您的问题。去看看吧