Pleno
19 de agosto de 2026

Encontre o bug: Go

Um trecho de código. Encontre o bug, ou prove que não existe nenhum.

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}

Clique nas linhas que causam o problema.

Seu veredito

Uma tentativa por dia. A resposta aparece logo depois.

Mantenha sua sequência

Crie uma conta para manter sua sequência e acompanhar seu progresso.

Criar uma conta