我有一个基本的 Windows 服务,它执行一些任务,这些任务在无限循环中定期执行:“ExecuteServiceWorkerMethods()”。我正在通过 OnStart() 方法中的工作线程启动无限循环,如下所示:
OnStart(string[] args)
{
workerThread = new Thread(ExecuteServiceWorkerMethods);
workerThread.Name = "ServiceWorkerThread";
workerThread.IsBackground = false;
workerThread.Start();
}
现在我想知道如何处理 OnStop() 方法中的工作线程?
我的无限循环如下所示:
private void ExecuteServiceWorkerMethods()
{
while (!serviceStopped)
{
DO WORK....
while (servicePaused)
{
Thread.Sleep(sleepTimeMillisecondsWhileServicePaused);
}
Thread.Sleep(sleepTimeMillisecondsWhileServiceNotStopped);
}
}
请记住,这都是非常基本的。我只想能够启动和停止我的 Windows 服务。