Задачи и тесты по Go для тренировки и обучения.
Учиться у нас: clc.to/4o0_XA
По рекламе: @tproger_sales_bot
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
Post #769
1.35K
Forwarded from Библиотека Go-разработчика | Golang
Go-разработчики часто используют следующую конструкцию:
Однако, для файлов с возможностью записи это может быть опасно, так как метод
Ошибки могут возникать на этапе закрытия файла, когда система завершает запись данных на диск. Чтобы избежать потери данных, важно проверять ошибки явным образом:
Использование
👉 Подробнее
joe shaw Don't defer Close() on writable files It'll bite you some day f, err := os.Create("file.txt")
if err != nil {
return err
}
defer f.Close()
Однако, для файлов с возможностью записи это может быть опасно, так как метод
Close() может вернуть ошибку, которая игнорируется при использовании defer. Ошибки могут возникать на этапе закрытия файла, когда система завершает запись данных на диск. Чтобы избежать потери данных, важно проверять ошибки явным образом:
f, err := os.Create("file.txt")
if err != nil {
return err
}
if _, err := f.Write([]byte("Hello, world!")); err != nil {
f.Close()
return err
}
return f.Close()
Использование
defer безопасно для чтения, но для записи стоит быть осторожнее и проверять ошибки вручную.👉 Подробнее
- 👍 16
- ❤🔥 1









