Эйч
Эйч
  • Все менторы
Задачи/Go-разработчик/Работа с таймерами

Работа с таймерами

Условие задачи

Необходимо выявить и устранить проблемы в коде, связанные с утечками ресурсов или неосвобождёнными таймерами

gofunc main() {
  ctx, cancel := context.WithTimeout(context.Background(), time.Second*10)

  for i := 0; i < 10; i++ {
    go doRequest(ctx)
  }

  time.Sleep(time.Second)
  cancel()
  time.Sleep(time.Second * 2)
}

func doRequest(ctx context.Context) {
  select {
  case <-time.After(time.Second * 2):
    fmt.Println("timer timeout")
  case <-ctx.Done():
    fmt.Println("context cancelled")
  }
}

Профессия

Go-разработчик

Сопроводим до оффера

Умножим шансы на каждом этапе поиска и поможем получить выгодный оффер

Узнать больше

Сервис развития карьеры

Контактыteam@h.careers@hcareers
TelegramVKYouTubeLinkedIn
Профессии
Компания
С чем помогаемОтзывыВопросы и ответыСертификатыВебинарыСтать ментором

Платформа принадлежит ООО "Эйч Карьера"
ИНН 9710095807 ОГРН 1227700077340
Адрес: 127006, город Москва, Старопименовский пер, д. 18 стр. 2, помещ./ком./этаж I/19/2

Copyright © 2020-2025 Сервис развития карьеры Эйч. Все права защищены.

Политика конфиденциальностиПользовательское соглашениеОферта