在windows服务中,如果OnStart被阻塞,将运行OnStop

本文关键字:OnStop 运行 OnStart windows 服务 如果 | 更新日期: 2023-09-27 17:49:21

如果OnStart方法是

while (true)
{
  // do stuff
}

OnStop会在这种情况下运行吗?或者我是否必须创建一个新线程,使线程OnStart在unblocks上运行?

在windows服务中,如果OnStart被阻塞,将运行OnStop

调用OnStart的线程不"属于"您。不是要阻止它。您应该使用它来设置网络上的任何线程、任何计时器、任何侦听器等,然后OnStart方法返回

只有当您OnStart返回时,业务控制管理器才会将您的业务从Starting转移到Started