Я использую CloseNotifier в своем приложении, в коде, который выглядит следующим образом
func Handler(res http.ResonseWriter, req *http.Request) {
notify := res.(CloseNotifier).CloseNotify()
someLogic();
select {
case <-notify:
someCleanup()
return;
default:
}
someOtherLogic();
}
Я заметил, что CloseNotifier устарел. Из исходного кода :
// Deprecated: the CloseNotifier interface predates Go's context package.
// New code should use Request.Context instead.
Однако я не уверен, как именно использовать Request.Context именно здесь.