C# 无法在IIS上并发执行Process.Start
此方法是在运行在IIS 6或更高版本上的ASP.NET Web应用程序(.NET 4.5.2)中定义的:C# 无法在IIS上并发执行Process.Start,c#,asp.net,.net,iis,process,C#,Asp.net,.net,Iis,Process,此方法是在运行在IIS 6或更高版本上的ASP.NET Web应用程序(.NET 4.5.2)中定义的: public string GetValueFromProcess() { string val = string.Empty; try { System.Diagnostics.Process p = System.Diagnostics.Process.Start(GetMyExeFilePath()); p.WaitForExit
public string GetValueFromProcess()
{
string val = string.Empty;
try
{
System.Diagnostics.Process p = System.Diagnostics.Process.Start(GetMyExeFilePath());
p.WaitForExit();
val = mainp.StandardOutput.ReadToEnd();
}
catch (Exception) { }
return val;
}
这样一个函数是否能够同时执行而不会出现问题,或者我会用
显然,有一些参数应该传递给流程,但为了简单起见,我删除了该部分。该函数将阻止当前请求,等待“p.WaitForExit();”完成。并发请求将产生多个进程。您还需要考虑IIS请求脚本超时设置,它会抛出THEADABLUT异常。为什么您认为它不能并发运行?因为我不确定IIS是否会为每个请求创建一个单独的进程实例,或者它会挂起。我不熟悉IIS如何处理这个问题。