有时候,将配置文件、模板甚至整个前端应用直接嵌入到 Go 二进制文件中,是一种提高应用部署效率和简化操作的有效方法。自从 Go 1.16 版本起,Go 语言官方引入了 //go:embed 指令,这使得嵌入静态资源变得异常简单而直接。本文将详细介绍如何在你的 Go 应用中使用这一强大的特性。
阅读全文…
本文翻译自:What’s false sharing and how to solve it (using Golang as example)
译文在解释伪共享(false sharing)之前,有必要简要介绍一下 CPU 架构中缓存是如何工作的。
CPU 缓存中的最小单位是缓存行(cache line)(如今,CPU 中常见的缓存行大小为 64 字节)。因此,当 CPU 从内存读取一...
阅读全文…