golang学习的点点滴滴:锁的使用
发布时间:2020-12-16 18:49:08 所属栏目:大数据 来源:网络整理
导读:packagemainimport("fmt""sync""runtime")varcounterint=0funcCount(lock*sync.Mutex){lock.Lock()counter++fmt.Println(counter)lock.Unlock()}funcmain(){lock:=sync.Mutex{}fori:=0;i10;i++{goCount(lock)//并发执行}for{lock.Lock()//锁定c:=counterlock
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 } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |