Trung cấp
19 tháng 8, 2026Tìm lỗi: Go
Một đoạn mã. Tìm ra lỗi, hoặc chứng minh là không có lỗi nào.
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}Nhấp vào những dòng gây ra vấn đề.
Phán quyết của bạn
Một lần thử mỗi ngày. Đáp án hiện ra ngay sau đó.
Giữ chuỗi ngày của bạn
Tạo tài khoản để giữ chuỗi ngày và theo dõi tiến độ của bạn.