我是WCF的初学者。我需要在我的服务中听一个特定的端口。应在托管服务时启动侦听(作为Windows服务)。它应该在服务停止时停止。
我已经设法在无限循环中实现简单控制台应用程序中的监听。
有没有办法在服务中做到这一点?
答案 0 :(得分:0)
这应该不是问题,您只需要将其作为Windows服务托管。端口应定义为端点地址的一部分。有关更多信息,请点击此链接http://msdn.microsoft.com/en-us/library/ms733069(v=vs.90).aspx
答案 1 :(得分:0)
在服务启动时创建一个执行端口侦听的线程,假设我假设您知道如何进行端口侦听。然后当服务结束时调用侦听器线程的Thread.Abort方法。请记住在线程中捕获ThreadAbortException,因为当线程被杀死时会引发此异常。您需要在此处进行清理,例如关闭端口和任何流读者/编写者。