我試圖解鎖互斥鎖,如果它被鎖定。但是,所以我想我會用恢復方法產生一個運行時錯誤:從鎖定的同步恢復。互斥體
package main
import "sync"
func main() {
var l sync.Mutex
l.Lock()
l.Unlock()
defer func() {
if recover() != nil {
// the return result can be altered
// in a defer function call
}
}()
l.Unlock()
}
然而,即使恢復,我仍然得到:
fatal error: sync: unlock of unlocked mutex
不能解鎖已經被解鎖的互斥。與您無法鎖定已鎖定的互斥鎖相同。 – RayfenWindspear
解鎖已解鎖的互斥鎖意味着您的程序不正確,並且無法恢復。 – JimB
這是很不清楚你在問什麼... – RayfenWindspear