Що таке Runspaces у Windows PowerShell 2.0?


14

Сьогодні я слухав підкаст HanselMinutes про PowerShell 2.0 . Скотт Хензельман взяв інтерв'ю у Хела Роттенберга та Кірка Мунро на TechEd 2009.

Вони говорили про RunSpaces у PowerShell 2.0. Чи може хтось, будь-ласка, пояснити поняття, що стоїть за ними, та навести деякі (реальні) випадки використання чи приклади?

Спасибі!

Відповіді:


17

Runspace - це специфічний екземпляр PowerShell, який містить набір MODIFIABLE команд, провайдерів, змінних, функцій та мовних елементів, доступних користувачеві командного рядка (або, загалом, для програми "хост").

Взагалі, Runspaces - це тема розробника . Якщо ви перебуваєте в командному рядку, ви можете змінити їх лише змінивши сеанс , і якщо ви типовий користувач командного рядка, ви насправді навіть не будете в курсі сеансів, за винятком випадків, коли ви використовуєте їх для віддаленого підключення. на інший комп'ютер. Однак для кожного сеансу є пов'язаний Runspace (або RunspacePool ), який контролює те, що вам доступно, і можна створити "обмежені" пробіги для того, щоб надати користувачам доступ лише до певних команд, а не до інших ....

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


3

Пробіг, що працює в оболонці, є ефективно відокремленим екземпляром часу, який я маю на увазі, в моєму розумінні.

Нещодавно я мав певний досвід використання пробілів PowerShell всередині веб-програми, щоб забезпечити деякі функції адміністрування через веб-інтерфейс. Зокрема, це дозволило декільком користувачам одночасно користуватися програмою, не впливаючи один на одного.


3

Пробіг PowerShell - застарілий термін. Зараз вони використовують сеанс PowerShell (PSSession). Я рекомендую почати з довідкової теми about_PSSessions .


Ця публікація має ще трохи розмитості щодо цього: obscure-powershell-tidbits.blogspot.com/2008/12/…
squillman

4
Це насправді не так . Вони перейменували Cmdlets через те, що в першу чергу невірно було названо Cmdlets: вони створюють сеанси, які можуть або не можуть створити новий Runspace;) Але основна концепція Runspace та Session не змінилася.
Джейкуль

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.