Может кто-нибудь объяснить, что такое Runspace PSThreadOptions? - PullRequest
2 голосов
/ 22 октября 2019

Мой главный вопрос: представляет ли 1 RunSpace 1 поток?

Я прочитал этот пост: Процесс против экземпляра против Runspace в PowerShell

И первоначально я понял это как:

У вас в настоящий момент запущен процесс powershell.

Объект пространства выполнения создается в адресном пространстве процесса powershell.

Он устанавливает и управляет собственным потоком в основном процессе.

Вы бы создали объект, представляющий скрипт, который вы хотите запустить в этом потоке, с помощью [powershell] :: create ()

Затем передайте его в пространство выполнения, которое будет выполнено в потоке. он управляет.

Однако, посмотрев на PSThreadOptions

https://docs.microsoft.com/en-us/dotnet/api/system.management.automation.runspaces.psthreadoptions?view=pscore-6.2.0

Я немного запутался - если (как я изначально думал) 1 runspace = 1 threadесть ли у него возможность создавать новый поток для каждого вызова (я полагаю, они имеют в виду каждый раз, когда вы вызываете .invoke () для уже созданного объекта, а не только, если вы переустановили его), а также в wМожет ли кто-нибудь использовать текущую ветку?

Любые разъяснения о том, как работают эти опции, любые исправления, которые вы можете предложить для моего текущего понимания вещей, будут очень признательны

Большое спасибо

Ник

...