我正在连接到这样的signalR集线器:
$scope.starthubD = function() {
$.connection.hub.start().done(function () {
$.connection.HubName.server.method(sessionId);
});
};
我收到的消息是这样的:
$.connection.HubName.client.method= function(msg) {
$scope.cars.push(msg);
};
通过集线器,我开始了10-12个长时间运行的线程:
public class ProcessHub: Hub
{
IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext<ProcessHub>();
new Thread(() => new Process(connectionId, hubContext)).Start();
new Thread(() => new Process2(connectionId, hubContext)).Start();
new Thread(() => new Process3(connectionId, hubContext)).Start();
}
线程本身使用以下命令直接向客户端报告:
hubContext.Clients.Client(connectionId).report(data);
我遇到的问题是它大多数情况下 ,但有时我会断开此消息:
http://domain.se/signalr/connect?transport=serverSentEvents&connectionTok ... weVsQoXvUzH&安培; connectionData =%5B%7B%22name%22%3A%22carcompare%22%7D%5D&安培; TID = 7 净:: ERR_CONNECTION _
答案 0 :(得分:4)
我发现了问题所在。其中一个线程抛出一个异常,使得与集线器的连接丢失。