Отмена дочернего context не отменяет родительский. Отмена распространяется вниз по дереву потомков, но не вверх и не на соседние ветки.
Есть родительский и дочерний context. Что произойдёт с родительским context при отмене дочернего?
Отмена дочернего context не отменяет родительский. Отмена распространяется вниз по дереву потомков, но не вверх и не на соседние ветки.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Отмена дочернего context не отменяет родительский. Отмена распространяется вниз по дереву потомков, но не вверх и не на соседние ветки.
Например, короткий timeout отдельного исходящего вызова не обязан завершать весь входящий запрос. Родительская отмена, напротив, затронет всех соответствующих потомков. CancelFunc нужно вызывать для освобождения ресурсов даже при раннем успешном завершении операции.