本期小竅門用到了兩個(gè)組件
- mutex 這個(gè)類似其他語言的互斥鎖
- waitGroup 這個(gè)類似其他語言的信號(hào)量或者java的柵欄鎖
示例如下
func TestDoSomething04(t *testing.T) {
total := 0
var wg = sync.WaitGroup{}
var mut = sync.Mutex{}
for i := 0; i < 5000; i++ {
go func() {
wg.Add(1)
defer func() {
mut.Unlock()
wg.Done()
}()
mut.Lock()
total++
}()
}
wg.Wait()
t.Log(total)
}
文章來源地址http://www.zghlxwxcb.cn/news/detail-649663.html
文章來源:http://www.zghlxwxcb.cn/news/detail-649663.html
到了這里,關(guān)于編程小竅門: 一個(gè)簡單的go mutex的小例子的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!