|
1
64
如果在.NET 2.0或3.5中执行此操作,请编写一个扩展方法,如下所示:
然后,您可以这样清除它:
然后,当4.0出现时,您可以放弃扩展方法而选择4.0版本。 更新 :将容量设置为零可能不是个好主意。如果重用同一个实例,这将保证在附加到生成器时重新分配。但是,在将容量设置为非常小的值(如1)之前,不会释放生成器实例中的内存。Capacity属性的默认值为16。您可能需要考虑使用16,或者(尽管效率较低)将容量设置两次:
|
|
|
2
28
在.NET 4.0中,您可以调用
这个
|
|
|
3
15
创建新的StringBuilder。旧的方法维护与之相关联的资源(例如,最大长度的缓冲区),这些资源最好只是被垃圾收集掉。 |
|
|
4
10
我认为你在做过早的优化。
我敢打赌
我认为创建一个新的StringBuilder是解决内存问题的最佳途径。和设置
|
|
|
5
10
从上的社区内容 MSDN :
|
|
6
5
在.NET框架中,引入了4种新方法
下面是这个例子。
|
|
|
7
2
如果您希望减少内存使用,我将使用clr profiler,使用上面其他人描述的方法,检查StringBuilder对象在其生命周期中使用的内存量。然后,您可以满足自己,您选择的选项适合您的需求,并释放您需要的资源。 |
|
|
8
1
我想最好的清理方法是使用
编辑 我希望这是最好的解决办法。
|
|
|
9
0
只需调用clear()方法,只需设置长度=0, 如果我们想保存内存,也可以将容量设置为0
|
|
|
10
0
|
|
|
Roy · SQL C#:结果未返回任何内容。读取() 8 年前 |
|
|
Pablo · 如何在Regex.replace中仅替换捕获组? 10 年前 |
|
|
rudimenter · 为什么以下代码编译和执行成功? 11 年前 |
|
|
Rachel · 是否有任何原因在该代码块的List<T>中找不到现有项? 11 年前 |
|
|
oshirowanen · 动态超级链接 11 年前 |
|
|
sab669 · SharpSVN不迭代所有子目录和文件 12 年前 |
|
|
ForeverWintr · Excel中的奇怪行为。工作表。单元格[行,列] 12 年前 |