【问题标题】:Do Gorilla websockets support concurrent read/writes for different connections?Gorilla websockets 是否支持不同连接的并发读/写?
【发布时间】:2021-12-09 23:17:23
【问题描述】:

我正在开发一个接受来自不同客户端的 websocket 连接的 Go 应用程序。我使用了 Gorilla websocket 库。 从文档页面here, 它说,不允许并发读/写。

但它并没有明确说明是否所有连接都完全不支持并发它不只支持特定客户端。

这意味着 - 我知道你不能同时读写同一个连接。但是同时从一个连接读取并写入另一个连接。 允许吗?

谁能帮助我理解这些基础知识。任何帮助表示赞赏。

【问题讨论】:

    标签: go websocket gorilla


    【解决方案1】:

    documentation says:

    连接支持一个并发读取器和一个并发写入器。

    文档说 每个 连接最多可以有一个阅读器和一个作者。换句话说,不允许以下操作:

    • 同一连接上有两个或多个并发读取器。
    • 同一连接上有两个或多个并发写入者。

    包中的并发限制允许:

    • 应用程序可以同时读取和写入相同的连接(与问题中的断言相反)。
    • 应用程序可以同时读取多个连接,其中每个连接都有一个并发读取器。
    • 应用程序可以同时写入多个连接,其中每个连接都有一个并发写入器。
    • 应用程序可以同时从一个连接读取并写入另一个连接。一个连接有一个读取器,另一个连接有一个写入器。

    【讨论】:

      猜你喜欢
      • 2016-08-22
      • 2016-04-26
      • 2016-08-02
      • 1970-01-01
      • 2011-06-01
      • 2018-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多