处理长时间运行的webrequest
问题描述:
我有一个web请求,可能需要30-90秒才能完成在某些情况下(大部分时间它完成2-3)。目前,如果请求需要这么长时间,软件看起来就像是挂起了。处理长时间运行的webrequest
我在想我可以使用后台工作者在一个单独的线程中处理webrequest。但是,软件必须等待请求才能继续处理。我知道如何设置后台工作者。我不确定的是如何处理等待处理的请求。
我是否需要创建一个计时器来检查结果,直到请求超时或被处理?
答
我不会使用计时器。相反,当Web请求在工作线程上完成时,使用对UI中控件的Invoke方法的调用,以便用结果更新UI(或发送某种通知)。