gpt4 book ai didi

c# - 调试停止 Windows 服务

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:52 25 4
gpt4 key购买 nike

我正在 VS2010 中调试 Windows 服务:

static void Main()
{
#if (DEBUG)
var s1 = new Service1();
s1.Start();
Thread.Sleep(Timeout.Infinite);
#else
ServiceBase.Run(new ServiceBase[]
{
new Service1()
});
#endif
}

这让我可以在调试器中运行服务。问题是,在启动时,服务打开一个 WCF channel ,在我通过停止调试终止进程后,该 channel 似乎占用了一个套接字。当我停止调试或服务停止时,如何关闭此套接字。我尝试在服务析构函数以及 OnStopOnShutdown 方法中设置断点,但这些都没有被调用。

最佳答案

据我所知,当您在 Visual Studio 中结束调试时,进程会在没有调用终结器的情况下被终止,甚至不会执行位于 finally block 中的代码。

关于c# - 调试停止 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11259143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com