System.Net.WebSockets.ClientWebSocket 的线程安全性

Mr.*_*oor 5 .net clientwebsocket

文档对于类的线程安全性并不清楚System.Net.WebSockets.ClientWebSocket

\n\n

SendAsync同时从多个线程调用该方法是否安全\xef\xbc\x9f

\n

Nat*_*gel 2

它的线程安全足以完成一些工作。

\n\n

消息来源称(感谢 Michael Kropat 在https://www.codetinkerer.com/2018/06/05/aspnet-core-websockets.html上的讨论)

\n\n
\n

线程安全:

\n\n
    \n
  • 并行调用 ReceiveAsync 和 SendAsync 是可以接受的。每一个可以同时运行。
  • \n
  • 在调用 CloseOutputAsync 或 CloseAsync 时,可以接受挂起的 ReceiveAsync。
  • \n
  • 尝试并行调用任何其他操作可能会损坏实例。尝试在另一个操作正在进行时调用发送操作或在另一个操作正在进行时调用接收操作将导致异常。
  • \n
\n
\n