4

我希望能够做这样的事情:

IHubProxy myHubProxy = /* ... */;

var t1 = Task.Run(() => myHubProxy.Invoke<int>("Foo");
var t2 = Task.Run(() => myHubProxy.Invoke<int>("Foo");

var r1 = await t1;
var r2 = await t2;

其中“Foo”在服务器上并行执行。但是,默认情况下的工作方式我相信这两个调用都将同步到集线器的线程上下文并一一运行。有没有简单的方法让一个 hubProxy 在同一个 SignalR hubproxy/连接上安排两个并行调用?

4

1 回答 1

8

您不能并行发送消息,因为像 webSockets 这样的传输始终使用相同的连接,您将尝试交错消息并且无法处理。如果您需要并行进行多次传输,请使用多个连接

于 2013-09-06T17:33:36.197 回答