Ситуация - это один клиент javascript на постоянном соединении SignalR (v1.1.2 от NuGet) в проекте ASP.NET MVC4. После подключения я отправляю несколько сообщений в строке от клиента к серверу. На сервере моя функция переопределения OnReceived вызывается из нескольких потоков одновременно, что приводит к тому, что сообщения принимаются не по порядку, так как они становятся гонкой, чтобы увидеть, какой из них сначала попадает в мой замок. Сообщения, отправленные с сервера на клиент, отображаются в порядке, хотя это может быть просто удачей.Есть ли способ сохранить порядок сообщений в постоянном соединении SignalR?
Есть ли какое-либо ожидание заказа сообщения в любом направлении для отдельного клиента? Есть ли какая-либо документация, которую мне не хватает, в которой перечислены гарантии, сделанные постоянным соединением?
Нужно ли мне что-либо делать, чтобы сообщения сервера и клиента поддерживались в порядке? Большинство моих отправлений поступают асинхронно из-за постоянного соединения, поэтому я в настоящее время просто вызываю IConnection.Send и игнорируя возвращенную задачу.
Вы имели в виду «клиент к серверу» во втором абзаце? – Screndib
Yep отредактировал ответ. – davidfowl
Вы уверены, что порядок сообщений сохраняется при отправке сообщений с сервера на клиент? См. [Link] (https://github.com/SignalR/SignalR/issues/3310) –