Descrivi a parole come risolveresti il problema della cache del prezzo dell'auto: struttura dati, sincronizzazione, aggiornamento.
iOS
Perché il codice attuale con un ciclo infinito for in main non funziona? Come correggerlo?
func getCarPrice() int64 { time.Sleep(1 * time.Second) return rand.Int63n(1000) } func main() { http.HandleFunc("/car/instant", func(resp http.ResponseWriter, req *http.Request) { fmt.Fprintf(resp, "%d", 0) }) http.ListenAndServe(":8080", nil) }
Devi scrivere una libreria semplice di cache in memoria. type Cache interface { Set(k, v string) Get(k string) (v string, ok bool) }
Perché alcune query restituiscono un prezzo che non è mai stato reale (ad esempio, un valore intermedio tra il vecchio e il nuovo prezzo)?
Perché aggiungere un mutex solo per la scrittura non risolve il problema della race condition? Come usare correttamente un mutex per proteggere una variabile condivisa?