【发布时间】:2015-09-05 08:02:04
【问题描述】:
我想创建一个可以收集任何类型数据(字符串、整数、浮点数)的集合类。所以我决定使用List<object> 结构来存储任何类型的数据。
由于使用 List 结构比创建非托管数组更安全(托管),所以我想创建一个 List 结构,以便它可以保存任何类型的数据......但我有些担心,如果我创建一个 List<object>结构并尝试保存一些字符串,由于字符串类型可能存在内存泄漏..
所以在使用(清空)List 并单独解除分配字符串后我是否必须做一些事情,或者 .Net 是否已经处理了...
有没有更好的方法来创建通用集合类?
【问题讨论】:
-
使用 Java 进行内存管理的可能答案:stackoverflow.com/questions/1567979/how-to-free-memory-in-java
-
尝试使用动态列表,看看是否有帮助。 stackoverflow.com/questions/6600810/…
-
是什么让您认为使用
string类型会导致.Net 中的内存泄漏? .Net 将代表您处理内存的释放和清理,在这种情况下您无需考虑。 -
你好像有点误会了。如果你在 C# 中创建一个数组(例如
string[]),它不是“unmanaged”。垃圾收集器管理数组。
标签: c# string list object memory