我正在開發一個接受來自不同客戶端的 websocket 連接的 Go 應用程式。我使用了 Gorilla websocket 庫。從這里的檔案頁面,它說,不允許并發讀/寫。
但它并沒有明確說明所有連接都根本不支持并發,或者僅該特定客戶端不支持并發。
這意味著 - 我知道你不能同時讀寫同一個連接。但同時從一個連接讀取并寫入另一個連接。 允許嗎?
任何人都可以幫助我理解這些基礎知識。任何幫助表示贊賞。
uj5u.com熱心網友回復:
該檔案說:
連接支持一個并發讀取器和一個并發寫入器。
檔案說每個連接最多可以有一個讀者和一個作者。對此換一種方式,下面的操作都不會允許的:
- 同一連接上的兩個或多個并發讀取器。
- 同一連接上的兩個或多個并發撰寫器。
包中的并發限制允許以下內容:
- 應用程式可以同時讀取和寫入相同的連接(與問題中的斷言相反)。
- 應用程式可以同時從多個連接讀取,其中每個連接有一個并發讀取器。
- 應用程式可以同時寫入多個連接,其中每個連接有一個并發寫入器。
- 應用程式可以同時從一個連接讀取并寫入另一個連接。一個連接有一個讀取器,另一個連接有一個寫入器。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/334882.html
上一篇:不能在賦值中使用strings.NewReplacer("#","o")(型別*strings.Replacer)作為型別strings.Replacer
