golang学习的点点滴滴:锁的使用

前端之家收集整理的这篇文章主要介绍了golang学习的点点滴滴:锁的使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
packagemain
import(
	"fmt"
	"sync"
	"runtime"
)

varcounterint=0

funcCount(lock*sync.Mutex){
	lock.Lock()
	counter++
	fmt.Println(counter)
	lock.Unlock()
}

funcmain(){
	lock:=&sync.Mutex{}

	fori:=0;i<10;i++{
		goCount(lock)//并发执行
	}

	for{
		lock.Lock()//锁定
		c:=counter
		lock.Unlock()//解锁

		runtime.Gosched()//把时间片让给别人
		ifc>=10{
			break
		}
	}
}
原文链接:https://www.f2er.com/go/190743.html

猜你在找的Go相关文章