gpt4 book ai didi

SignalR:在同一网站上传/下载文件之前没有消息传递

转载 作者:行者123 更新时间:2023-12-04 12:58:47 36 4
gpt4 key购买 nike

在继续下载或上传文件(WebClient.DownloadFileAsync|UploadFileAsync 或通过 HttpWebRequest)并同时调用 SignalR-hub 方法时,我遇到了一些问题:

SignalR 调用停止,直到文件加载完成。
似乎是这样:所有信号器调用都在排队。所有排队的调用都会进一步执行(在文件加载之后)。

我的代码片段:

hubProxy.Invoke("TraceDocumentUploadingRequest", callerId, fileName, "File loading started ", 0);

DownloadFileByKey(fileKey, (progressPercentage, bytesSent) => { hubProxy.Invoke("TraceDocumentUploadingRequest", callerId, fileName, "File loading in progress", progressPercentage); });

hubProxy.Invoke("TraceDocumentUploadingRequest", callerId, fileName, "File loading finished", 100);

文件下载完成后,将在集线器上执行第二个“TraceDocumentUploadingRequest”集线器方法调用(在文件加载处理程序中)。

文件加载处理程序在当前线程或另一个线程中执行(与 DownloadFileByKey 方法实现相关) - 结果是相同的。

我如何避免这种行为并在正确的时间强制调用集线器方法?

最佳答案

总结 David Fowl 的评论,该问题是 SignalR 版本 1.1.3 中的一个错误,但已在更高版本中修复。具体版本2.0.0

关于SignalR:在同一网站上传/下载文件之前没有消息传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19136630/

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