gpt4 book ai didi

c# webservice 调用,缓冲区太小(异步?)

转载 作者:行者123 更新时间:2023-11-30 17:42:41 24 4
gpt4 key购买 nike

我有一个 ASP.NET Web API 项目,它调用一个用 delphi 编写的服务。在我从服务获取的数据流变得太大之前,此连接工作正常(delphi 服务只是从数据库中读取一些数据,因此它们之间没有文件被发送)。

现在,我当然增加了 MaxBufferSize,但在某些时候它变得荒谬,现在我正在寻找更复杂的解决方案。所以我遇到了异步(我的 delphi 服务中的每个方法也可以作为异步使用,感谢 Microsoft)。但是即使我将我的函数调用为异步,当数据流大于设置的缓冲区大小时我仍然会收到错误消息(实际上我没有收到错误消息,执行只是在 await GetData 处停止。那么,是否有可能以 block 的形式处理我从服务中获取的数据?例如,我设置了数据流的最大大小,并且该函数一直在获取数据直到我获取所有数据?

谢谢

最佳答案

异步与缓冲区大小或流式传输无关。

So, is there a possibillity to process the data that I am getting from my service in chunks?

是的,这就是您所需要的。我知道的所有 Web 服务 API 都支持流式传输。 WCF 和 HttpClient 当然可以。搜索例如“httpclient stream response”应该让你开始。

据我所知,这里不需要异步 IO。

关于c# webservice 调用,缓冲区太小(异步?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31711971/

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