Go sync.Mutex 解析 2022-01-15 1172 words 3 mins read 简介 sync.Mutex 是 go 标准库中使用的排它锁。当一个 goroutine 获取锁后,其它 goroutine 则无法获取锁而被阻塞,直到锁被释放而成功抢到锁。 本文是对 sync.Mutex 源码的总结,不会涉及到具体 Read more...
Go Context 应用与源码分析 2021-12-19 2340 words 5 mins read 概述 Go 1.7 标准库引入 Context,用于传递上下文信息,如取消信号、超时信号、k-v 键值对等 源码解析 分析基于 go 1.17.5 版本的代码 整体概览 首先,代码中 Read more...
Linux IO 模型-阻塞、非阻塞、同步、异步、多路复用 2021-09-25 1965 words 4 mins read [toc] Linux 的设计哲学中有一条准则 万物皆文件 ,体现为:读取系统信息是读文件;获取用户输入是读文件;通过 socket 发送数据是写文件。不少操作是通过读写文件完成 Read more...
Go 反射 2021-09-05 1695 words 4 mins read 什么是反射 反射是指程序在运行期间,动态地更新、获取变量的值,包括获取字段类型、名称、调用类变量对应的方法等。 使用反射,不需要在编译时就确定变 Read more...
总结 MySQL 中的锁 2021-07-04 961 words 2 mins read 众所周知,mysql 中有很多种锁的概念,如行锁、乐观锁、排它锁等等,本文对此进行归纳。 锁的类型 加锁类型的不同,表现在对竞争资源的处理有不同的 Read more...