我创建了一个 powershell 作业,我想将它的运行时间限制为 10 秒。所以我使用了 Wait-Job 命令,如果超时我执行 Stop-Job 命令。问题是停止作业命令大约需要 2 分钟。我怎样才能解决它并立即停止工作?
While($hasTimeFromNTP -eq $false)
{
Write-Host "Start get time from NTP" -ForegroundColor Yellow
Start-Job -Name GetNTPTime -ScriptBlock $getTimeFromNtp | Out-Null
$result = Wait-Job GetNTPTime -Timeout 10
if($result -ne $null)
{
$NTPTime = Receive-Job GetNTPTime
$hasTimeFromNTP = $true
}
else
{
Write-Host "GetTimeFromNTP timed out"
Stop-Job GetNTPTime
Remove-Job GetNTPTime -Force
}
}
谢谢