欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

go语言基础到提高(13)-同步

发布时间:2025/3/12 编程问答 27 豆豆
生活随笔 收集整理的这篇文章主要介绍了 go语言基础到提高(13)-同步 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

defer的主要作用就是在当前函数或者方法返回之前调用一些用于收尾的函数,例如关闭文件描述符、关闭数据库连接以及解锁资源。

只需要在被调用的函数前边加上go关键字,就可以轻松的开启并发执行。

package mainimport ("fmt""sync""time" )var (lock sync.MutexnumSum int = 0counter int = 1 )func main() {for i := 1; i < 10; i++ {go addNum()}time.Sleep(time.Millisecond * 10) }func addNum() {lock.Lock()defer lock.Unlock()fmt.Print(counter, "*", counter, "+", numSum)counter++numSum += counter * counterfmt.Println("=", numSum)}

11+0= 4
22+4= 13
33+13= 29
44+29= 54
55+54= 90
66+90= 139
77+139= 203
88+203= 284
9*9+284= 384

与50位技术专家面对面20年技术见证,附赠技术全景图

总结

以上是生活随笔为你收集整理的go语言基础到提高(13)-同步的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。