[英]How to get powershell runspace status in c#
I'm working with Powershell runspaces in ASP.Net MVC and finding it difficult to get documentation on how to check the status of an existing Powershell Runspace. 我正在使用ASP.Net MVC中的Powershell运行空间,发现很难获得有关如何检查现有Powershell运行空间状态的文档。 Really appreciate any insight!
真的很感谢任何见识!
Controller 控制者
public class DemoController : ApiController
{
PowerShell psInstance = PowerShell.Create();
static Runspace rSpace = RunspaceFactory.CreateRunspace();
...
private void Initialise()
{
try
{
psInstance.Runspace = rSpace;
if (HOW TO CHECK IF RUNSPACE IS ALREADY OPEN?) <<--
{
DO NOTHING
}
else
{
rSpace.Open();
LoadModules();
}
}
catch (CmdletInvocationException e)
{
rSpace.Close();
rSpace.Dispose();
psInstance.Dispose();
throw e;
}
}
Inspect the RunspaceStateInfo
property 检查
RunspaceStateInfo
属性
if(rSpace.RunspaceStateInfo.State == RunspaceState.Opened)
{
// runspace is open, do stuff
}
else if(rSpace.RunspaceStateInfo.State == RunspaceState.BeforeOpen)
{
// call rSpace.Open() before invocation
}
else
{
// runspace state is either broken, already in use or closed
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.