¿Qué son los espacios de ejecución en Windows PowerShell 2.0?


14

Hoy escuché un podcast de HanselMinutes sobre PowerShell 2.0 . Scott Hanselman entrevistó a Hal Rottenberg y Kirk Munro en TechEd 2009.

Hablaron sobre RunSpaces en PowerShell 2.0. ¿Puede alguien explicar el concepto detrás de ellos y dar algunos casos de uso (del mundo real) o ejemplos?

¡Gracias!

Respuestas:


17

Un Runspace es una instancia específica de PowerShell que contiene colecciones MODIFICABLES de comandos, proveedores, variables, funciones y elementos de lenguaje que están disponibles para el usuario de la línea de comandos (o más genéricamente, para la aplicación "host").

En términos generales, los espacios de ejecución son un tema para desarrolladores . Si está en la línea de comandos, solo puede modificarlos modificando su sesión , y si es un usuario típico de la línea de comandos, realmente ni siquiera estará al tanto de las Sesiones, excepto cuando las use para conectarse de forma remota. a otra computadora. Sin embargo, cada sesión tiene un Runspace (o RunspacePool ) asociado que controla lo que está disponible para usted, y es posible crear espacios de ejecución "restringidos" para darles a los usuarios acceso a ciertos comandos y no a otros ...

En PowerShell 2.0, usa la clase RunspaceFactory para crear Runspaces o RunspacePool. Puede leer más sobre Runspaces en MSDN


3

Un espacio de ejecución de PowerShell es efectivamente una instancia aislada del tiempo de ejecución de PowerShell, según tengo entendido.

Recientemente tuve algunas experiencias usando espacios de ejecución de PowerShell dentro de una aplicación web, para proporcionar algunas características de administración a través de una interfaz web. En particular, permitió que varios usuarios usaran la aplicación al mismo tiempo, sin afectarse entre sí.


3

El espacio de ejecución de PowerShell es un término obsoleto. Ahora usan la sesión de PowerShell (PSSession). Recomendaría comenzar con el tema de ayuda about_PSSessions .


Este post tiene un poco más de blurbage en esto: obscure-powershell-tidbits.blogspot.com/2008/12/...
squillman

44
Esto no es realmente cierto. Cambiaron el nombre de los Cmdlets porque los Cmdlets fueron nombrados incorrectamente en primer lugar: crean sesiones, que pueden o no crear un nuevo Runspace;) Pero el concepto subyacente de Runspace y Session no ha cambiado.
Jaykul

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.