Объясните принцип работы механизма Table Dispatch и его применение в системах обработки данных.
Можете пояснить, что подразумевается под термином Environment в контексте разработки программного обеспечения?
Опишите словами, как вы будете решать задачу с кэшированием цены машины: структура данных, синхронизация, обновление.
Почему некоторые запросы возвращают цену, которой никогда не было (например, промежуточное значение между старой и новой ценой)?
Почему добавление mutex только на запись не решает проблему data race? Как правильно использовать mutex для защиты общей переменной?
Почему текущий код с бесконечным циклом for в main не работает? Как это исправить?
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) }
Нужно написать простую библиотеку in-memory cache. type Cache interface { Set(k, v string) Get(k string) (v string, ok bool) }