结束进程并等待结束

This commit is contained in:
陈国伟 2021-07-29 14:46:59 +08:00
parent 2956fa406a
commit a1e4aed2dc
3 changed files with 7 additions and 19 deletions

View File

@ -59,23 +59,7 @@ namespace FastGithub.Dns
this.socket.IOControl(SIO_UDP_CONNRESET, new byte[4], new byte[4]);
}
this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
var maxSpinCount = 100;
var spinWait = new SpinWait();
var localEndPoint = new IPEndPoint(address, port);
for (var i = 0; i < maxSpinCount; i++)
{
try
{
this.socket.Bind(localEndPoint);
break;
}
catch (SocketException ex) when (ex.SocketErrorCode == SocketError.AccessDenied)
{
spinWait.SpinOnce();
}
}
this.socket.Bind(new IPEndPoint(address, port));
}
/// <summary>

View File

@ -34,7 +34,9 @@ namespace FastGithub.Dns
try
{
Process.GetProcessById(pid).Kill();
var proess = Process.GetProcessById(pid);
proess.Kill();
proess.WaitForExit();
return true;
}
catch (ArgumentException)

View File

@ -34,7 +34,9 @@ namespace FastGithub.ReverseProxy
try
{
Process.GetProcessById(pid).Kill();
var proess = Process.GetProcessById(pid);
proess.Kill();
proess.WaitForExit();
return true;
}
catch (ArgumentException)