Шрифт:
Вы можете имитировать поведение
Если вы помните, что дескрипторы файлов являются просто индексами внутренней таблицы, работа этой функции должна быть ясна. Третий аргумент просто предоставляет индекс, с которого ядро должно начать поиск неиспользуемого дескриптора файла.
Использовать ли в собственном коде
9.4.3.3. Работа с флагами статуса файла и режимами доступа
В разделе 4.6.3 «Возвращаясь к
Таблица 9.4. Флаги O_xx для
Категория | Функции | Флаги |
---|---|---|
Доступ к файлу | open , fcntl | O_RDONLY , O_RDWR , O_WRONLY |
Создание файла | open | O_CREAT , O_EXCL , O_NOCTTY , O_TRUNC |
Статус файла | open , fcntl | O_APPEND , O_DSYNC , O_NONBLOCK , O_RSYNC , O_SYNC |
Помимо первоначальной установки различных флагов с помощью
Помимо самих режимов именованная константа
POSIX требует, чтобы
Используя
9.4.3.4. Неблокирующий ввод/вывод для каналов и FIFO
Ранее для описания способа работы каналов мы использовали сравнение с двумя людьми, моющими и вытирающими тарелки с использованием сушилки; когда сушилка заполняется, останавливается моющий, а когда она пустеет, останавливается вытирающий. Это блокирующее поведение: производитель или потребитель блокируются в вызове