dev.to | 📄 原文链接 | 2026-09-17 收录

一百万个 Go map 条目占 38 MB,不是 16 MB

来源:dev.to — 2026-09-16

📋 概述

作者在 Go 1.27.1 上实测 map[int64]int64:按纸面算法每个条目是 8 字节键加 8 字节值,一百万个条目该占 16 MB,实际堆上约 37.8 MB,也就是每条约 37.8 字节。他沿用测量 goroutine 栈时的办法——大量分配后强制 GC,看运行时报告多少仍然存活——发现每条成本在 21 到 44 字节之间摆动。

🔑 核心要点

💡 金句

唯一决定每条成本的是条目有多少条,而不是键和值有多大。
← 返回 dev.to 首页