我想知道特定进程是否正在使用给定端口,即netstat -ban。我遇到过使用IPGlobalProperties来获取活动连接列表,但这似乎不包括进程信息。
如果 C# 中存在某个类可以让我以编程方式执行此操作,那就太好了。理想情况下,我不必通过管道传输 cmd shellProcess输出。
假设您有一个包装内部长时间运行方法的方法.这种外部方法可以在调用所述长时间运行的方法之前/之后进行少量工作.例如:
public async Task<int> LongRunningWrapperAsync()
{
int result = await LongRunningAsync();
result++;
return result;
}
Run Code Online (Sandbox Code Playgroud)
似乎使用生成的样板代码的附加权重async不一定值得使用await,因为它的继续基本上是微不足道的.因此,给定一个足够微不足道的*延续,使用它是否更高效Task.ContinueWith?例如
public Task<int> LongRunningWrapperAsync()
{
return LongRunningAsync().ContinueWith(task => task.Result + 1,
TaskContinuationOptions.ExecuteSynchronously);
}
Run Code Online (Sandbox Code Playgroud)
*是的,'足够'和'琐碎'都是模糊的术语.此外,我在这个人为的例子中忽略了异常处理.我认为处理异常的必要性意味着延续是非平凡的.