GO语言并发编程之互斥锁、读写锁详解
在本节,我们对Go语言所提供的与锁有关的API进行说明。这包括了互斥锁和读写锁。我们在第6章描述过互斥锁,但却没有提到过读写锁。这两种锁对于传统的并发程序来说都是非常常用和重要的。
一、互斥锁
互斥锁是传统的并发程序对共享资源进行访问控制的主要手段。它由标准库代码包sync中的Mutex结构体类型代表。sync.Mutex类型(确切地说,是*sync.Mutex类型)只有两个公开方法——Lock和Unlock。顾名思义,前者被用于锁定当前的互斥量,而后者则被用来对当前的互斥量进行解锁。
类型sync.Mutex的零值表示了未被锁定的互斥量。也就是说,它是一个开箱即用的工具。我们只需对它进行简单声明就可以正常使用了,就像这样:
varmutexsync.Mutex
mutex.Lock()
热门推荐
10 美女新人结婚祝福语简短
11 生日祝福语古语简短创意
12 对同事简短生日祝福语
13 励志祝福语幽默句子简短
14 猪年元旦祝福语简短创意
15 新房落成的简短祝福语
16 感谢母校寄语简短祝福语
17 广东考试祝福语朋友简短
18 对上司的简短祝福语