Powershell не имеет встроенной команды Start-Thread.
Однако
V2.0 имеет задания PowerShell, которые могут выполняться в фоновом режиме и могут рассматриваться как эквивалент потока. В вашем распоряжении следующие команды для работы с заданиями:
Name Category Synopsis
---- -------- --------
Start-Job Cmdlet Starts a Windows PowerShell background job.
Get-Job Cmdlet Gets Windows PowerShell background jobs that are running in the current ...
Receive-Job Cmdlet Gets the results of the Windows PowerShell background jobs in the curren...
Stop-Job Cmdlet Stops a Windows PowerShell background job.
Wait-Job Cmdlet Suppresses the command prompt until one or all of the Windows PowerShell...
Remove-Job Cmdlet Deletes a Windows PowerShell background job.
Вот пример того, как с ним работать. Чтобы запустить задание, используйте start-job и передайте блок скрипта, который содержит код, который вы хотите запустить асинхронно:
$job = start-job { get-childitem . -recurse }
Эта команда запускает задание, которое рекурсивно возвращает всех дочерних элементов в текущий каталог, и вы немедленно возвращаетесь в командную строку.
Вы можете проверить переменную $job
, чтобы увидеть, завершилось ли задание и т. Д. Если вы хотите дождаться окончания задания, используйте:
wait-job $job
Наконец, чтобы получить результаты работы, используйте:
receive-job $job