Назад | Перейти на главную страницу

Что такое пространства выполнения в Windows PowerShell 2.0?

Сегодня я слушал ГензельМинуты подкаст о PowerShell 2.0. Скотт Хансельман взял интервью у Хэла Роттенберга и Кирка Манро на TechEd 2009.

Они говорили о RunSpaces в PowerShell 2.0. Может кто-нибудь объяснить концепцию, стоящую за ними, и привести некоторые (реальные) варианты использования или примеры?

Спасибо!

Runspace - это особый экземпляр PowerShell, который содержит MODIFIABLE коллекции команд, поставщиков, переменных, функций и языковых элементов, которые доступны пользователю командной строки (или, в более общем смысле, «хост-приложению»).

Вообще говоря, Runspaces - это разработчик тема. Если вы находитесь в командной строке, вы можете изменить их, только изменив свой сессия, а если вы типичный пользователь командной строки, вы даже не будете знать о сеансах, кроме случаев, когда вы используете их для удаленного подключения к другому компьютеру. Однако каждый сеанс имеет связанный Runspace (или RunspacePool), который контролирует то, что вам доступно, и можно создавать "ограниченные" пространства выполнения, чтобы предоставить пользователям доступ только к определенным командам, а не к другим ....

В PowerShell 2.0 вы используете RunspaceFactory класс для создания Runspaces или RunspacePool. Ты можешь читать больше о Runspaces на MSDN

В любом случае, как я понимаю, пространство выполнения PowerShell фактически является изолированным экземпляром среды выполнения PowerShell.

Недавно у меня был опыт использования пространств выполнения PowerShell внутри веб-приложения для предоставления некоторых функций администрирования через веб-интерфейс. В частности, это позволило нескольким пользователям использовать приложение одновременно, не влияя друг на друга.

Область выполнения PowerShell - устаревший термин. Сейчас они используют сеанс PowerShell (PSSession). Я бы рекомендовал начать с about_PSSessions раздел помощи.

Вот несколько рабочих примеров использования Runspaces и RunspaceFactory:

http://www.nivot.org/2009/01/22/CTP3TheRunspaceFactoryAndPowerShellAccelerators.aspx

-Oisin