0

我需要从 WCF 服务(自托管)启动进程。我已经通过使用 Process.Start() 方法完成了它。然后我尝试重新启动我的 WCF 服务,但它失败了,因为它的地址已经在使用中(但旧进程不存在)。此问题与https://superuser.com/questions/215351/how-do-i-kill-a-process-that-is-dead-but-listening类似,以及与从 WCF 服务打开的进程相关的确切问题(他们保持 tcp 连接打开)。有没有办法在不重新启动进程的情况下重新启动 WCF 服务,从这个服务开始?

4

1 回答 1

0

我发现只有一种方法可以安全地从 WCF 服务启动进程。我创建了一个代理进程,它正在启动另一个进程,而不是直接启动指定进程,首先我启动 ProcessStarter.exe 进程,该进程依次启动指定进程,然后它正在关闭。我无法解释 Windows 的行为,但在这种情况下,由 WCF 服务创建的所有 TCP 连接都将关闭。

于 2013-01-24T20:33:40.110 回答