答案 0 :(得分:2)
如果我理解你的问题,你想知道你是否能以某种方式陷入按下停止按钮(收到中断信号)。我不知道在powershell中注意中断信号的方法,但你可以使用finally块来确保调用你的Dispose代码。这是我的简单测试:
try{
while($true)
{
Write-Host "In try block . . . "
Start-Sleep 1
}
}
catch
{
Write-Host "In catch block"
}
finally
{
Write-Host "In finally block"
}
当我从ISE运行它并按下停止按钮(或按ctrl-C)时,我得到:
# C:\Temp> .\stopEx.ps1
In try block . . .
In try block . . .
In finally block