Eri*_*ver 4 powershell asynchronous background task
有没有办法让PowerShell作业报告进度或在事件完成之前触发事件?我刚刚开始在PowerShell中执行后台作业,并且想知道我能在多大程度上推动这项功能.
Kei*_*ill 10
标准的"手动"方式是使用Get-Job cmdlet.对于事件,当您使用Start-Job创建作业时,返回的Job对象上有一个"StateChanged"事件,您可以订阅,例如:
$job = Start-Job { Get-Process; Start-Sleep -seconds 60 }
Register-ObjectEvent $job -EventName StateChanged `
-SourceIdentifier JobStateChanged `
-Action { Write-Host "Job $($Sender.Id) $($Sender.JobStateInfo)" }
Run Code Online (Sandbox Code Playgroud)