我有一个如下所示的函数:
Public Function testFunction(ByVal input_string As String) As String
Dim s As New StringBuilder()
Dim c As Char
For i As Integer = 0 To input_string.Length - 1
c = input_string.Chars(i)
s.Append(c)
Next
Return s.ToString
End Function
但我想知道是否最好显式销毁任何对象,如下所示:
Public Function testFunction(ByVal input_string As String) As String
Dim s As New StringBuilder()
Dim c As Char
For i As Integer = 0 To input_string.Length - 1
c = input_string.Chars(i)
s.Append(c)
Next
Dim t As String = s.ToString
s = Nothing
Return t
End Function
或者只是让垃圾收集器为我们完成这项工作?
上述两个功能都有效,但我只想知道性能的最佳实践......
谢谢
Setting s = Nothing
毫无意义,因为它超出了下一条指令的范围,因此无论如何都有资格进行垃圾收集。
将变量设置为 null/nothing 并不意味着垃圾收集会在此时启动。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)