2010-03-04 68 views
3

在此先感谢您阅读并回答此问题。asp.net中的后台进程

我在asp 2.0中得到了一个按钮,它会处理一些大的东西。完成需要一段时间(超过30,000次比较),我想知道浏览器是否说它失去了与服务器的通信,服务器将完成该过程?

回答

1

您可能想要修改您的体系结构,以便HTTP响应不依赖于在超时期限内完成的处理。这听起来好像你不会基于问题根据计算结果告诉用户任何东西。您可以使用不同的方法,但大多数都涉及将消息写入队列,然后创建一个单独的进程,例如排队并独立执行长时间运行的工作的Windows服务监视器。

+0

很酷。我不需要向用户显示任何消息(它将在后台发送一封电子邮件与数据CVS文件)。所以我应该使用?线?背景资料? – GutierrezDev 2010-03-04 19:50:24

+0

你可以使用一个线程,BackgroundWorker类,MSMQ和一个单独的监视服务,或更多,我没有想到。 – Nick 2010-03-04 19:56:22

+0

谢谢你。现在我只是将代码导出到控制台应用程序。它持续约8-9小时完成,但它的工作。感谢您的信息。 – GutierrezDev 2010-03-05 12:41:35

0

你不应该在网站上执行这个按钮,而是生成一个线程服务器端。

您可以使用AJAX告诉服务开始比较并稍后收听答案。

+0

谢谢。现在我得到了用一个参数调用函数的按钮,然后执行所有的过程。那么它如何看起来像线程? – GutierrezDev 2010-03-04 19:48:13