gpt4 book ai didi

c# - 处理长时间运行的 WCF [OperationContract(IsOneWay = true)]

转载 作者:行者123 更新时间:2023-12-02 22:19:37 25 4
gpt4 key购买 nike

我关注定义为 OneWay 的服务,因为它运行时间很长(几分钟)并且我等不及它完成(它在 ASP.NET 应用程序中使用)。

问题是,如果我在服务调用后调用 client.Dispose(),它会阻塞,并且在 60 秒超时后异常到期。

在这种情况下我应该如何处理客户端?增加服务的超时不是解决方案,因为我不能在使用它的网页的 HTTP 请求上等待这么长时间。

[ServiceContract]
public interface IMyService
{
[OperationContract(IsOneWay = true)]
void BeginRun();
}

var client = new MyServiceClient();
client.BeginRun();
client.Close(); //This leads to time-out, how and when to call it?

感谢提示。

最佳答案

我会将您的绑定(bind)切换为 netMsmqBinding .然后从您的客户那里您的单向调用将是即时的。

通过 http 的长时间发送充其量是有问题的,而且管理起来很复杂。在两者之间插入一个队列将大大简化此操作。

关于c# - 处理长时间运行的 WCF [OperationContract(IsOneWay = true)],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13919364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com