我有一个Windows服务,我已经编写了代码,在OnStart()事件中运行任务:
protected override void OnStart(string[] args)
{
this.DoTask();
}
private void DoTask()
{
Task task1 = Task.Factory.StartNew(() => this.OriginalFileProcessor.StartPolling());
try
{
Task.Wait(task1);
}
catch (Exception ex)
{
this.Log.Error("Failed running the task", ex);
}
}
DoTask是一个无限循环。只有当服务停止时,它才会停止。
但是当我尝试启动服务时,它会等待很长时间,然后给出以下错误:
Windows could not start the ... service on Local Computer.
Error 1053: The service did not respond to the start or control request in a timely fashion.
如何解决这个问题?
OnStart
的线程上等待。 - Damien_The_Unbeliever