【发布时间】:2017-02-24 02:58:43
【问题描述】:
try
{
$tcp = new-object System.Net.Sockets.TcpClient
$tcp.ReceiveTimeout = 500
$tcp.SendTimeout = 500
$tcp.Connect('127.0.0.1',80)
Write-Host "Connection possible!"
$tcp.close()
}
catch
{
Write-Host "Cannot connect!"
$_.Exception.Message
}
Measure-Command - 21 秒(总是 21 秒!)
If $tcp.Connect('127.0.0.1',80,$Null)
Measure-Command - 10 毫秒
为什么?
我知道不应该有 $Null 参数,但为什么它很快?
【问题讨论】:
-
$tcp.Connect 采用两个参数而不是三个msdn.microsoft.com/en-us/library/d7ew360f(v=vs.110).aspx。带三个参数引发异常:无法连接!找不到“连接”的重载和参数计数:“3”。在我的机器上使用 2 个参数成功连接需要 1 秒。
标签: .net powershell