Golang 中的字串記憶體使用情況
使用值為「A」或「B」的map[string]string 最佳化程式碼時”,假設可能是map[string]bool由於其較小的值類型而更有效。為了研究這一點,unsafe.Sizeof() 是用來測量記憶體使用情況。僅報告資料的「淺」大小。字串記憶體表示
Go 中的字串由標頭表示由指向資料的指標和長度組成。類型定義了以下結構:
因此,unsafe.Sizeof(somemap) 將只報告此標頭的大小,該大小與字串值無關。 🎜>地圖的實際記憶體需求
要取得地圖的實際記憶體使用情況,很重要考慮他們所引用的資料。提供了更準確的估計。儲存中的字串UTF-8記憶體中的位元組序列。字串會為切片分配一個新的支援數組也很重要。
以上是為什麼 `map[string]string` 和 `map[string]bool` 在 Go 中顯示相似的記憶體使用情況?的詳細內容。更多資訊請關注PHP中文網其他相關文章!