我正在用 golang 編寫一個簡單的 web api,其中包含 crud 操作(從數(shù)據(jù)庫讀取和寫入)。作為其中的一部分,我是否需要為每個處理程序啟動一個 go 例程,HandleFunc或者服務(wù)器 api 是否通過HandleFunc. 如果我需要啟動一個單獨的 go 例程,我假設(shè)我必須使用緩沖通道來發(fā)送信號,以及如何確保使用正確的上下文將請求發(fā)送回正確的客戶端。如果這是一個基本問題,我很抱歉,但我來自 nodejs 背景,這是自動處理的。
1 回答

嗶嗶one
TA貢獻(xiàn)1854條經(jīng)驗 獲得超8個贊
是的,每個處理程序都運(yùn)行在一個 goroutine 上。您需要使用互斥鎖或通道來管理對共享資源的訪問。本文展示了如何以非常實用的方式管理并發(fā):https ://eli.thegreenplace.net/2019/on-concurrency-in-go-http-servers/
- 1 回答
- 0 關(guān)注
- 129 瀏覽
添加回答
舉報
0/150
提交
取消