【发布时间】:2013-10-31 15:58:31
【问题描述】:
示例代码:
textBox.Click += (s, e) => { ... };
textBox.Dispose ();
textBox = null;
文本框会被GC收集吗?
【问题讨论】:
-
如果没有
Dispose或将其设置为null也不会...... -
@minitech。是否必须先从文本框中删除事件?
textBox.Click -= (s, e) => { ... } -
@Harrison 不,它没有
-
@Harrison:不,它不会那样工作(你需要保留对代表的引用)
-
这完全取决于 lambda 表达式中的代码。它将倾向于捕获 this(Form 对象),可能是 TextBox 对象。如果它将这些引用交给其他代码,那么您很可能会遇到问题。这并不常见。
标签: c# winforms events garbage-collection