【发布时间】:2011-07-06 11:27:02
【问题描述】:
我有 List 对象。我该如何处理清单?
例如,
List<User> usersCollection =new List<User>();
User user1 = new User();
User user2 = new User()
userCollection.Add(user1);
userCollection.Add(user2);
如果我设置userCollection = null;会发生什么?
foreach(User user in userCollection)
{
user = null;
}
哪个最好?
【问题讨论】:
-
您的代码不包含任何 dispose 操作。
-
Dispose 用于释放非托管资源。如果列表没有任何对其的引用,它将由垃圾收集器在适当的时候释放。
-
@Paolo 并提示清理(某些特定于实现的类型)一些托管资源;但是,是的,非托管更常见
-
注意 - 问题不是专门询问 IDisposable。 OP 只是在常识中使用 dispose 这个词。
标签: c# list garbage-collection dispose