Open hic003cih opened 4 years ago
異步 -> 使用者將請求放入消息隊伍,並可以關閉瀏覽器,然後也不會覺得整個畫面卡住 不用等待server回應,就可執行別的請求
同步 -> 使用者必須等所有動作都完成後,才能關閉頁面,畫面會卡住 需等待server回應,才可以執行接下來的動作
異步範例 -> 避免短時候大量資料寫入sql,會先將請求放入緩存(消息隊伍),再慢慢的將資料寫入sql 異步可以快速回應使用者的請求,但寫入sql的時間並不會因為異步而減少 例如:sql寫入需要1個小時,使用異不只是讓使用者可以先去做別的事 寫入sql還是需要1個小時
同步範例 -> 銀行的轉帳系統(保證資料的完整性),對DB的保存和操作都是用同步,其餘情況優先使用異步
bufferChannel -> 異步的狀態
c := make(chan bool,1)
unbufferChannel -> 同步狀態c := make(chan bool)