[英]C# Timer getting stopped after some time
我正在将此代码用于C#服务,“ SomeFuction”应该每6分钟运行一次,但是大约30分钟后它就会停止运行。
我在这里想念的是什么? 我希望它一直运行到我的服务开始运行,请帮助:(
var timer = new System.Threading.Timer((e) =>
{
try
{ SomeFunction(arg1, arg2, arg3); }
catch
{ return;}
}, null, 0, 360000);
Timer
可能被GarbageCollector
处置了吗? 似乎您只声明了在本地范围内保存Timer-Reference的变量 。
为了防止GarbageCollection,请确保将Timer-Reference存储在服务整个生命周期中都存在的对象中。
有关类似问题,请参见此帖子: 为什么System.Threading.Timer会自行停止?
其余的代码是什么样的? Timer对象是否超出范围?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.