2012-10-01 62 views
0

我们有一个WPF应用程序,该应用程序向WCF服务发出请求,该服务托管为Windows服务。 对服务的调用位于不同的线程上。但是,值得注意的是,当在WCF端有某种时间等待或休眠时,WPF应用程序将挂起。 服务上的实例上下文模式设置为单一。这是一个问题吗?客户端应用程序在等待来自WCF的响应时挂起

我们如何才能让客户更具反应?为什么应该在服务上休眠,即使调用不在UI线程上,客户端也会等待?

回答

0

我想你正在尝试对WCF服务进行同步呼叫。

您应该尝试在异步模式下调用服务。

以下链接可能对您有所帮助。

Async Call to WCF - 1

Async Call to WCF - 2

+1

为什么要在单独的线程同步请求阻塞UI? – Clemens

+0

我的问题完全是克莱门斯。 – xaria

+0

在同步调用中,直到响应,GUI线程将被阻塞。如果你异步调用它,GUI将保持响应。 –