我需要一个在后台运行作业的代码块。假设用户单击“提交”按钮,然后在后台启动作业,同时用户关闭该窗口并运行其他作业,并且作业应该继续运行。
请在ASP.NET和VB.NET中提供一些帮助。
非常感谢您的帮助
答案 0 :(得分:5)
您可以查看ThreadPool.QueueUserWorkItem方法,该方法允许您在从线程池中提取的线程上运行某些方法。作为替代方案,如果它是一个长时间运行的任务,您可以使用Thread类手动生成一个新线程,以避免危及池中包含有限数量线程的线程,并且该线程也用于处理请求。 ASP.NET应用程序。
答案 1 :(得分:4)
您可以通过创建托管wcf服务的Windows服务来完成此操作,当用户单击提交按钮时,您可以将请求发送到Windows服务,并且Windows服务将在用户关闭窗口的后台事件中运行
答案 2 :(得分:1)
BackgroundWorker可能是最容易开始的地方。将您的代码放入DoWork事件中。
答案 3 :(得分:0)
您可以使用BackgroundWorker,具体取决于您的具体情况。
答案 4 :(得分:0)
BackgroundWorker将在后台运行,并且可以在需要时轻松用于将更新同步回GUI。
或使用Task Parallel Library ...