我要創建一批定時器作爲局部變量的做一些事情,如:如何防止我的計時器GC回收之前收集執行?
void Foo()
{
Timer t = new Timer(myTimerCallback,null,1000,Timeout.Infinite);
}
不幸的是,他們中的一些是由GC收集他們在1秒鐘後調用myTimerCallback之前。由於我有很多定時器,因此不可能將它們存儲在私有靜態成員中。而且很難找到放置GC.Keeplive(t)的地方。
我該如何讓每個計時器在死亡之前做好自己的事情?
我不想將這些計時器存儲在私人成員中的原因是太多了。我可以試試,但有沒有更好的方法? – 2009-03-04 13:03:17