{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fimagawa.hatenadiary.jp%2Fentry%2F2019%2F08%2F14%2F090000\" title=\"map\u306e\u7af6\u5408\u72b6\u614b\u306e\u306f\u306a\u3057 - \u4eca\u5ddd\u9928\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","provider_url":"https://hatena.blog","url":"https://imagawa.hatenadiary.jp/entry/2019/08/14/090000","provider_name":"Hatena Blog","description":"\u76ee\u6b21 map\u306e\u7af6\u5408\u72b6\u614b\u3068\u306f\u4f55\u304b\uff1f \u3069\u3046\u3057\u305f\u3089\u3044\u3044\u306e\u304b\uff1f sync.RWMutex\u3092\u4f7f\u3046 \u5171\u6709\u30ed\u30c3\u30af\u3068\u6392\u4ed6\u30ed\u30c3\u30af sync.Map\u3092\u4f7f\u3046 atomic.Value\u3092\u4f7f\u3046 \u30ed\u30c3\u30af\u3068Compare and swap \u3055\u3044\u3054\u306b \u611f\u60f3 map\u306e\u7af6\u5408\u72b6\u614b\u3068\u306f\u4f55\u304b\uff1f Go\u306emap\u306f\u3042\u308bgoroutine\u3067Read\u3057\u3066\u3044\u308b\u3068\u304d\u306b\u5225\u306egoroutine\u304b\u3089Write\u3057\u3066\u306f\u3044\u3051\u306a\u3044\u3068\u3044\u3046\u30eb\u30fc\u30eb\u304c\u3042\u308b\u3002\u3082\u3057\u9055\u53cd\u3059\u308b\u3068panic\u3092\u8d77\u3053\u3059\u3002\u3053\u306e\u3053\u3068\u306fgo1.6\u306e\u30ea\u30ea\u30fc\u30b9\u30ce\u30fc\u30c8\u306b\u66f8\u3044\u3066\u3042\u308b(\u4ed6\u306e\u51fa\u5178\u3092\u63a2\u3057\u305f\u3051\u3069\u898b\u3064\u3051\u3089\u308c\u306a\u304b\u3063\u305f\u30fb\u30fb)Go 1.6 Release Notes - The Go Programming La\u2026","width":"100%","author_name":"imagawa_yakata","categories":["Go"],"blog_url":"https://imagawa.hatenadiary.jp/","title":"map\u306e\u7af6\u5408\u72b6\u614b\u306e\u306f\u306a\u3057","image_url":null,"author_url":"https://blog.hatena.ne.jp/imagawa_yakata/","blog_title":"\u4eca\u5ddd\u9928","published":"2019-08-14 09:00:00","version":"1.0","type":"rich","height":"190"}