我在C#中开发了一个使用HttpListener的服务。 当我停止服务时,该过程暂时保持打开状态。 如果我重新启动服务,它会崩溃(可能是因为使用了端口)。
如何在服务停止时(通过网络停止)立即停止该过程,或者至少在我开始新服务之前等待该过程完成。
这是相关的代码段:
protected override void OnStart(string[] args)
{
Thread thread = new Thread(new ThreadStart(Listen));
thread.Start();
}
protected override void OnStop()
{
base.OnStop();
}
答案 0 :(得分:0)
您的OnStop方法需要采取一些停止Listen线程的操作。您可以通过以下几种方式实现此目的: