2014-04-21 11 views
5

Sto connessione a un hub signalR come questo:Perché il mio SignalR applicazione a volte viene disconnessi

$scope.starthubD = function() { 
     $.connection.hub.start().done(function() { 
      $.connection.HubName.server.method(sessionId); 
     }); 
    }; 

sto ricevendo messaggi come questo:

$.connection.HubName.client.method= function(msg) { 
     $scope.cars.push(msg); 
    }; 

attraverso il mozzo, sto iniziando 10-12 fili lunghi:

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(); 
} 

I thread stessi segnalano direttamente al client utilizzando:

hubContext.Clients.Client(connectionId).report(data); 

Il problema che sto avendo è che funziona maggior parte del tempo, ma a volte ho staccato con questo messaggio:

http://domain.se/signalr/connect?transport=serverSentEvents&connectionTok ... weVsQoXvUzH & connectionData =% 5B% 7B% 22name % 22% 3A% 22carcompare% 22% 7D% 5D & tid = 7 net :: ERR_CONNECTION_

+0

Hai il tuo server sempre attivo? – tarzanbappa

+0

sì certo che è sempre attivo. – Dimo

+1

Fornisci maggiori dettagli sul sistema operativo del server, che stai utilizzando e abilita la registrazione: http://www.asp.net/signalr/overview/signalr-20/hubs-api/hubs-api-guide-javascript-client #logging – vtortola

risposta

4

ho scoperto quello che era il problemi. Uno dei thread stava generando un'eccezione, rendendo la connessione all'hub persa.

+1

Anche se hai risolto il problema, dovresti fornire una risposta migliore per aiutare potenzialmente i futuri visitatori. E il tuo codice ha generato un errore sul thread, che ha causato la disconnessione. – Greg

+2

Cosa nel mio codice ha causato l'eccezione? Questo è legato alla logica aziendale specificata e non riesco davvero a capirlo perché è fuori tema. Ma posso dire: Qualsiasi tipo di eccezione (generale) interrompe la connessione SignalR. – Dimo

Problemi correlati