我正在查看一些現有的代碼,并看到重復了幾次defer mtx.Unlock()
mtx.Lock()這對我來說似乎是錯誤的,我更喜歡慣用的方式來推遲執行Unlock之后的時間,Lock但是該文檔Mutex.Lock沒有指定Lock將失敗的情況。因此,早期defer模式的行為應與慣用方式相同。我的問題是:是否有令人信服的案例說這種模式不如?(例如,Lock可能會失敗,然后推遲Unlock會panic),因此代碼應該改變還是應該保留原樣?
可以在鎖定之前推遲解鎖嗎
慕蓋茨4494581
2021-04-07 18:14:10