In SignalR ist Hub.Context thread sicher?

Wenn mehrere Anforderungen von verschiedenen Clients gleichzeitig auftreten, ändert sich der Wert von Hub.Context.ConnectionId während der Ausführung des Handlers.

Angenommen, ich habe zwei Clients mit den Client-IDs A und B verbunden und auf meinem Hub eine Methode namens foo (). Ich sende eine Anfrage von A an den Server, der foo () aufruft. Während die Anfrage von A bearbeitet wird, sende ich eine Anfrage von B, der foo () aufruft. Zu Beginn der Verarbeitung der Anforderung von A Hub.Context.ConnectionId == A, aber am Ende der Methode Hub.Context.ConnectionId == B.

Soll ich den Hub.Context kopieren? Ab wann soll ich das machen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage