0

我继承了一个经常访问 Web 服务的 VB2010 应用程序。它工作得很好,只是偶尔与 Web 服务的连接会出现问题。现在,服务的 .Timeout 设置为 100000 或 100 秒。我想做的只是更新表单上的标签,以便用户知道他必须等待多长时间才能等待超时。像“连接(10s)”或类似的东西。无论如何,我尝试了几个计时器,但它们似乎都冻结了,因为其他一切似乎都在等待连接线程完成。有没有办法在服务尝试连接时更新我的​​标签?

4

1 回答 1

1

它被锁定的原因可能是因为这是一个 WinForm 项目,并且您正在从 UI 线程调用 Web 服务。只要UI线程忙,屏幕就会被锁定。要解决此问题,您只需在单独的线程中调用 Web 服务。实现这一点的最简单方法是使用BackgroundWorker组件。当您在表单设计器中时,您会在组件工具箱中看到它。

于 2012-10-01T15:37:09.397 回答