gpt4 book ai didi

asp.net - SignalR - 从 WPF 应用程序调用集线器非常慢

转载 作者:可可西里 更新时间:2023-11-01 17:10:22 28 4
gpt4 key购买 nike

我有一个 ASP.NET WebForms 应用程序,它有许多 SignalR 中心,将从 WPF 应用程序调用。最初我通过控制台应用程序而不是 WPF 应用程序对此进行了测试,只是为了证明这个概念。这太棒了,而且是瞬间的。

最近我开始调用 WPF 应用程序中的集线器,使用完全相同的代码,但我遇到了很多速度问题(在本地和远程调用时)- connection.Start().Wait( ) 通话最多可能需要 30 秒!

在 WPF 中连接到 http url 可能很慢,是否有任何明确的原因?我的调用代码如下。我曾尝试在单独的线程中执行调用,但这没有帮助。

 private static void Execute(string hubName, List<KeyValuePair<string,object[]>> items)
{
FBDBDataContext dc = new FBDBDataContext();
string url = ConfigurationManager.AppSettings["WebURL"];
var connection = new HubConnection(url);
IHubProxy myHub = connection.CreateHubProxy(hubName);

connection.Start().Wait(); // not sure if you need this if you are simply posting to the hub

foreach (var kvp in items)
myHub.Invoke(kvp.Key, kvp.Value);
}

最佳答案

您不应该在每次希望与服务器通信时都创建一个新连接。在程序开始时创建一次并重复使用。

关于asp.net - SignalR - 从 WPF 应用程序调用集线器非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21091665/

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