-1
私は値を取得し、私の質問は、それはメモリがゴミになるで後で値または参照によって返されるgolangマップ値?
en := m["foo"]
delete(m, "foo")
エントリを削除
type Entity struct{}
entity := &Entity{}
m := map[string]*Entity{"foo":entity}
構造体に、私はポインタの文字列と値のキーでマップを持ってみましょうそれへのポインタがマップから削除されてから収集されますか?他のノートでは、私は新しいポインタをen私はエントリを削除する前に、ポインタのコピーも同じメモリ位置を指しているので、メモリはガベージコレクションされていないマップエントリが削除されますか?私は混乱して、助けに感謝します。
@iczaのおかげで別の投稿を指しているので、すでに回答があります。 –
このコードスニペットは、別のポインタを使用してアドレスを格納するとメモリがガベージコレクションされないことを示しています https://play.golang.org/p/YC4ax6k6dm –