ミドル
2026年8月19日

バグを見つけろ:Go

コードは1つ。バグを見つけるか、バグがないことを示してください。

go
1package users
2
3import "sync"
4
5type User struct {
6	ID   string
7	Name string
8}
9
10var (
11	mu    sync.Mutex
12	cache = map[string]*User{}
13)
14
15func GetUser(id string, fetch func() *User) *User {
16	mu.Lock()
17	defer mu.Unlock()
18	if u, ok := cache[id]; ok {
19		return u
20	}
21	u := fetch()
22	cache[id] = u
23	return u
24}

問題のある行をクリックしてください。

あなたの判断

1日1回まで。回答するとすぐに正解が表示されます。

連続記録を守る

アカウントを作成すると連続記録を保存し、進捗を追跡できます。

アカウントを作成