Go 的字符串映射键是否有最大长度? 其实我用https://github.com/OneOfOne/cmap而不是 Go 的 map 。
问题是,我在 cmap
中使用的 key 长度约为 200-4000 个字符,这会是一个问题/问题吗?
import "github.com/kokizzu/gotro/I"
import "sync/atomic"
var CACHE_IDX int64
var CACHE_KEYS cmap.CMap
func init() {
CACHE_KEYS = cmap.New()
}
// change a really long string to a shorter one
func RamKey_ByQuery(query string) string {
nkey := CACHE_KEYS.Get(query)
if nkey != nil {
return nkey.(string)
}
new_idx := atomic.AddInt64(&CACHE_IDX, 1)
ram_key := `:` + I.ToS(new_idx) // convert integer to string
CACHE_KEYS.Set(query, ram_key)
return ram_key
}
最佳答案
我认为唯一的限制是你的内存力。
关于string - GoLang的字符串映射键有字符串长度限制吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40675029/