![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Golang
Kimi_987
这个作者很懒,什么都没留下…
展开
-
Golang 源代码解析(一) 锁机制的研究
前序 在并发编程,尤其是Golang中多协程编程中,数据的一致性和安全性是一个必须要解决的难度。这里面最重要的是通过锁机制来解决这些问题,锁包括CAS,互斥锁,消息队列,分布式锁来解决。但是对于锁的底层实现,知之甚少,这里就是来探讨锁机制的底层实现。一.锁的场景实例 我们在使用Golang的过程中,经常会使用到并发处理问题的情况。在网络编程中处理消息,或者在应用...原创 2019-01-18 14:13:50 · 3699 阅读 · 0 评论 -
Goroutine与CSP
Goroutine简述在go语言开发过程中,Goroutine是保证go语言并发的重要机制。通过go func() 我们可以简单的调用Goroutine,很方便的使用其轻量级的并发方案。对比于系统级别线程:用户空间 首先是在用户空间,避免内核态和用户态的切换导致的成本。由语言或者框架层调度更小的栈空间允许创建大量实例(百万级别)Goroutine调度器1.M 代表的是系统线程,...原创 2019-02-21 13:41:47 · 259 阅读 · 0 评论 -
Golang1.12 包管理Go module使用
Go Module简介初始化GoModule简介1.11版本初步引入的GoModule模块。1.12版本正式开始支持。GoModule是官方提供的包管理解决方案。通过GoModule,开发者可以把工程放在GOPATH之外的位置。相比于之前的包管理方案: dep,vendor。GoModule的管理方案更加灵活。我们运行go mod help来看看GoModule中有哪些命令。这里主要介绍...原创 2019-03-09 14:37:55 · 18308 阅读 · 6 评论