RunspaceFactory Class

Provides a means to create a single runspace or a pool of runspaces.

Namespace: System.Management.Automation.Runspaces
Assembly: System.Management.Automation (in System.Management.Automation.dll)

public static class RunspaceFactory
public final class RunspaceFactory
public final class RunspaceFactory

This example creates a runspace, opens it synchronously, and then uses the runspace when the pipeline is invoked.

namespace HostPS4
    using System;
    using System.Management.Automation;           // Windows PowerShell namespace.
    using System.Management.Automation.Runspaces; // Windows PowerShell namespace.

  class HostPS4
    static void Main(string[] args)

    // Call the CreateRunspace() method to create the 
    // runspace. This call does not specify any 
    // configuration information such as a custom host 
    // or initial session state information.
    Runspace rs = RunspaceFactory.CreateRunspace();

      // Call the Create() method to create the PowerShell 
      // object, and then specify the runspace and 
      // create the pipeline.
      PowerShell ps = PowerShell.Create();
      ps.Runspace = rs;

      Console.WriteLine("Process               Id");

      // Using the PowerShell object, invoke the pipeline 
      // synchronously.
      foreach (PSObject result in ps.Invoke())
      } // End foreach.

      // Close the runspace and release any resources.
    } // End Main.
  } // End HostPS4.

For more examples of creating a single runspace, see Examples of Creating Runspaces

A runspace is the operating environment used when invoking the commands of a pipeline. When you create a runspace pool, you create a set of runspaces that have the same features, such as the same initial session state, the same host, and the same information that is used to connect to a computer.

The following are some changes to this class that are introduced in Windows PowerShell 2.0.


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.


Target Platforms

© 2014 Microsoft