close (системный вызов) - close (system call)

редактировать

A системный вызов close - это системный вызов, используемый для закрытия файлового дескриптора ядром . Для большинства файловых систем программа завершает доступ к файлу в файловой системе, используя системный вызов close. Это очищает файловые буферы, обновляет метаданные файла , которые могут включать в себя и индикатор конца файла в данных; освобождает ресурсы, связанные с файлом (включая дескриптор файла ), и обновляет общесистемную таблицу используемых файлов. Некоторые языки программирования поддерживают структуру данных файлов, открытых их библиотекой времени выполнения, и могут закрываться при завершении программы. Эта практика известна как получение ресурса - инициализация (RAII). Некоторые операционные системы будут вызывать closeдля файлов, содержащихся в программе, если она завершается. Некоторые операционные системы вызывают системный вызов closeкак часть восстановления операционной системы в результате системного сбоя.

Определение POSIX библиотеки C

Вызов close стандартизирован спецификацией POSIX

int close (int filedes); int fclose (ФАЙЛ * поток);

Функция возвращает ноль, чтобы указать, что файл был успешно закрыт. Если возникает какая-либо ошибка, возвращается значение -1 и соответствующим образом устанавливается errno.

Возможные ошибки:

EBADF
Указанный аргумент не является допустимым дескриптором файла
EINTR
Вызов функции был прерван сигналом
EIO
Произошла ошибка ввода-вывода
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-15 12:03:01
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте