Что такое context в Go, зачем нужен, можно ли без него жить?

Context передаёт отмену, deadline и небольшие request-scoped значения по цепочке операций. Без него можно писать программы, но согласованно отменять работу сложнее.

Короткий ответ

Что ответить на собеседовании

Context передаёт отмену, deadline и небольшие request-scoped значения по цепочке операций. Без него можно писать программы, но согласованно отменять работу сложнее.

Подробный разбор

Ответ с пояснениями

Context передаёт отмену, deadline и небольшие request-scoped значения по цепочке операций. Без него можно писать программы, но согласованно отменять работу сложнее.

Передавайте его первым параметром и проверяйте отмену в долгих операциях. Context не останавливает произвольную функцию принудительно: код и драйверы должны её поддерживать. Не используйте values как контейнер обязательных бизнес-параметров; они должны оставаться явными аргументами.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее