Базы данныхИнтернетКомпьютерыОперационные системыПрограммированиеСетиСвязьРазное
Поиск по сайту:
Подпишись на рассылку:

Назад в раздел

CLOSE(2)

НАЗВАНИЕ
close - закрыть дескриптор файла

СИНТАКСИС

        int close (fildes)
        int fildes;

ОПИСАНИЕ
Аргумент fildes - это дескриптор файла, полученный в результате выполнения системных вызовов creat, open, dup, fcntl или pipe. Системный вызов close закрывает этот дескриптор. Все блокировки файла, ассоциированного с дескриптором fildes, принадлежащие вызывающему процессу, удаляются.

Если закрывается файл-псевдоустройство [см. intro(2)] и вызывающий процесс предварительно зарегистрирован для получения сигнала SIGPOLL [см. signal(2) и sigset(2)] в связи с событиями, ассоциированными с этим файлом [см. I_SETSIG в streamio(7)], регистрация событий применительно к упомянутым процессу и файлу отменяется.

Последний вызов close для потока, связанного с дескриптором fildes, приводит к ликвидации потока. Если флаг O_NDELAY не установлен и не было сигналов, предназначенных для потока, системный вызов close ждет до 15 секунд, пока все модули и драйверы завершат вывод, и только после этого ликвидирует поток. Если флаг O_NDELAY установлен или есть отложенные сигналы, системный вызов close не ждет окончания вывода и ликвидирует поток немедленно.

Системный вызов close завершается неудачей и указанный дескриптор файла не закрывается, если выполнено хотя бы одно из следующих условий:

[EBADF]
Аргумент fildes не является корректным дескриптором открытого файла.
[EINTR]
Во время выполнения системного вызова перехвачен сигнал.
[ENOLINK]
Аргумент fildes указывает на удаленный компьютер, связи с которым в данный момент нет.

СМ. ТАКЖЕ
creat(2), dup(2), exec(2), fcntl(2), intro(2), open(2), pipe(2), signal(2), sigset(2).
streamio(7) в Справочнике администратора.

ДИАГНОСТИКА
При успешном завершении результат равен 0; в случае ошибки возвращается -1, а переменной errno присваивается код ошибки.


  • Главная
  • Новости
  • Новинки
  • Скрипты
  • Форум
  • Ссылки
  • О сайте




  • Emanual.ru – это сайт, посвящённый всем значимым событиям в IT-индустрии: новейшие разработки, уникальные методы и горячие новости! Тонны информации, полезной как для обычных пользователей, так и для самых продвинутых программистов! Интересные обсуждения на актуальные темы и огромная аудитория, которая может быть интересна широкому кругу рекламодателей. У нас вы узнаете всё о компьютерах, базах данных, операционных системах, сетях, инфраструктурах, связях и программированию на популярных языках!
     Copyright © 2001-2024
    Реклама на сайте