Назад к задачам
VK CloudПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
11
Создание потокобезопасного кеша с автоматическим истечением TTL для объектов User
Компании, где спрашивали:
Условие задачи
Необходимо реализовать кеш в оперативной памяти, который: • Сохраняет структуры типа User, используя поле User.ID в качестве ключа. • Автоматически удаляет записи после заданного времени жизни (по умолчанию 3 секунды). • Предоставляет следующие операции:
- Set(user User, ttl time.Duration) – добавить элемент в кеш с указанным TTL.
- Get(id string) (User, bool) – получить элемент по идентификатору и флаг наличия.
- Delete(id string) – удалить элемент из кеша. • Обеспечивает корректную работу в конкурентной среде (потокобезопасность).