文章詳情頁
python - 使用goroutine+channel和java多線程+queue隊列的方式開發各有什么優缺點?
瀏覽:118日期:2022-08-08 15:09:56
問題描述
我感覺很多項目使用java或者c的多線程庫+線程安全的queue數據結構基本上可以實現goroutine+channel開發能達到的需求,所以請問一下為什么說golang更適合并發服務端的開發呢?使用goroutine+channel和java多線程+queue隊列的方式開發各有什么優缺點?
問題解答
回答1:http://tleyden.github.io/blog...
goroutine比thread開銷更小,而且更加簡單
回答2:線程需要搶鎖,會浪費cpu性能,并行變為串行,而gorouten是以通知發送數據給單獨線程做一個副本,然后其他線程不用競爭鎖的方式去真正并行執行
相關文章:
1. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?2. sql語句 - mysql中關聯表查詢問題3. javascript - [js]為什么畫布里不出現圖片呢?在線等4. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變5. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。6. html - vue項目中用到了elementUI問題7. javascript - 有什么比較好的網頁版shell前端組件?8. javascript - iframe 為什么加載網頁的時候滾動條這樣顯示?9. javascript - 這不是對象字面量函數嗎?為什么要new初始化?10. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?
排行榜
