如果同時發生來自不同客戶端的多個請求,則在執行處理程序期間Hub.Context.ConnectionId的值將發生更改。在SignalR中是Hub.Context線程安全嗎?
假設我有2個客戶端與客戶端Ids A和B連接,並且我的Hub上有一個名爲foo()的方法。我向A發送一個請求到調用foo()的服務器,然後在處理來自A的請求時,我發送一個調用foo()的請求。在A的請求Hub.Context.ConnectionId == A的處理開始時,但在方法調用Hub.Context.ConnectionId == B結束時。
我應該複製Hub.Context嗎?我應該在什麼時候這樣做?
我看到了謝謝,我從IHubActivator返回了同一個Hub,現在我已經將它改爲每次都返回一個新的Hub。 – 2012-04-22 18:34:12