2016-08-23 33 views
-1

我基本上有一个通用处理程序由另一个系统调用。该处理程序执行一些基本功能,并最终在即燃即用型方案中使用Task.Factory.StartNew()调用非关键方法。我的问题是,如果处理程序以context.Response.End()结束 - 是否也会结束在新线程上启动的进程,还是继续运行OK?会Response.End()终止任何启动Task.Factory.StartNew()

+0

根据您的描述,除非应用程序退出,否则它将继续运行。请发布您的代码以进一步清晰。 –

回答

0

如果你的意思是processes,答案是NO。这些进程将继续运行,即使它们的“启动线程”也会终止,因为进程是独立的,就像Web服务器的进程(例如IIS中的w3wp.exe)一样。

如果你的意思是线程,答案是YES。记住线程不是直接调用Response.End方法调用而死亡的。事实是Task.Factory.StartNew的所有线程都是后台线程,因此当主线程(在此上下文中,请求线程)中止时,它们将被终止。

相关问题