【发布时间】:2011-08-31 14:15:44
【问题描述】:
在下面的代码中,我在类的构造函数中创建了一个 DispatcherTimer。没有人继续引用它。
在我的理解中,定时器应该在离开构造函数作用域后的某个时间被垃圾收集器回收。
但这不会发生!即使在使用 GC.Collect() 强制进行垃圾回收之后
幕后发生了什么?
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
new DispatcherTimer
{
Interval = TimeSpan.FromMilliseconds(100),
IsEnabled = true
}
.Tick += (s, e) =>
{
textBlock1.Text = DateTime.Now.ToString();
};
}
}
【问题讨论】:
标签: c# .net constructor garbage-collection