![]() |
1
1
你说得对,使用Remove()方法只是重置一个内部索引,它对内部数组没有任何作用。不显式管理内存是.NETFramework的一个关键属性,垃圾收集器会自动对其进行排序。 从技术上讲,可以调用GC.Collect()。然而,这几乎总是一个非常糟糕的主意。是的,您将使StringBuilder实例及其内部数组消失,前提是没有对它的引用。但它也会过早地提升程序中的其他对象。这意味着它们将停留在超过必要的时间,你的程序将最终使用 更多 记忆。 |
![]() |
2
3
最好的方法是让它落在范围之外,GC将处理内存。 |
![]() |
3
1
您可以让它超出范围,或者删除(0,Length),然后将Capacity设置为0(我认为如果将Capacity设置为0,则会释放额外的内存,但我不完全确定)。 |
![]() |
4
1
你可以随时使用
|
![]() |
5
0
任何 NET中的对象是让GC处理它。
我想您可能对在.NET中“处置”对象的含义感到困惑。会议的目的
必须
*我假设它是一个类级变量。如果它只是一个局部变量,就不需要设置为
|
![]() |
MichaÅ Bednarz · 角度2-创建URL 7 年前 |
|
user8098743 · 合并/优化子字符串语句 7 年前 |
|
Lucas Han · StringBuilder的格式结构 8 年前 |
![]() |
Nico · 带任务的C#异步编程[已关闭] 9 年前 |
![]() |
Damiii · 使用StringBuilder的漂亮表格 10 年前 |