Исправьте утечку: граница функции — граница жизни defer. Реализуйте process: откройте ресурс и сразу отложите его закрытие.
- Задача
- Решение
- Обсуждение
Process: вынести тело цикла
GolangРешение
func process(path string, log *[]string) {
*log = append(*log, "открыт "+path)
defer func() { *log = append(*log, "закрыт "+path) }()
}