/images/hugo/avatar.png

Channel 使用与实现

1. Channel 概述 1.1 CSP 模型 要想了解 Channel,我们要先追溯到 CSP 模型。CSP 是 Communicating Sequential Process 的简称,中文直译为通信顺序进程,或者叫做交换信息的循序进程,是用

Atomic 原子操作

1. Atomic 概述 1.1 原子操作 Package sync/atomic 实现了同步算法底层的原子的内存操作原语。之所以叫原子操作,是因为一个原子在执行的时候,其它线程不会看到执行一半的操作结

go Context

1. Context 概述 所谓上下文指的是在 API 之间或者方法调用之间,所传递的除了业务参数之外的额外信息,比如服务追踪。Go 标准库中的 Context 不仅仅传递上下文信息还提

go Pool

1. Pool 概述 Go 是一个自动垃圾回收的编程语言,采用三色并发标记算法标记对象并回收。但是,如果你想使用 Go 开发一个高性能的应用程序的话,就必须考虑垃圾

线程安全的 map

线程安全的 map 1. 线程安全的 map 概述 1.1 map 的基本使用 键类型 Go 内建的 map 类型如下: 1 map[K]V 其中,key 类型的 K 必须是可比较的(comparable),在 Go 语

Once 实现单例

Once 有且仅有一次执行 1. Once 概述 Once 可以用来执行且仅仅执行一次动作:Once 常常用来初始化单例资源,或者并发访问只需初始化一次的共享资源,或者在测试