asp.net线程:可归因于启动它们的用户

时间:2011-03-18 18:48:36

标签: c# asp.net

(asp.net 2.0,C#)

我需要实现以下的线程:

  1. 可归因于启动线程的用户(例如,在回调中,我可以使用ID或线程的名称来查找用户先前启动的线程)。
  2. 如果线程完成,回调应该能够查找线程并知道它已完成。
  3. 最后,如果线程处于活动状态,例如超过一分钟,则该线程需要自动终止。
  4. 我已经阅读了很多内容,我现在知道我需要亲自管理线程(例如我不能使用asp.net线程池),因为上面列出的要求(1)。我注意到C#中的Thread类有一个ID属性;可以使用该ID来实现要求(1)(我不知道该ID是否始终是唯一的,等等)?

    顺便说一句,我知道asp.net可以在某些点终止线程。基本上,每当用户的Session被消灭时,我的线程无论如何都是无用的。如果线程确实失败或因任何原因而终止,那很好,因为任务将重新启动。大多数情况下,我关注的是找到某种方式,用户可以查找已启动的线程..这可以通过在Session中存储ID属性来实现吗?另外,如果是这样,我如何使用该属性来实际找到该线程?如果没有,建议我做什么的方法是什么。感谢。

1 个答案:

答案 0 :(得分:0)

IIS将为您识别ASP.Net线程。您不需要自己管理线程。您可能需要调整您的身份验证方法(链接1)或将IPrincipal对象明确地放入HttpContext.User(链接2)

IIS Blog

MSDN article