Книга: UNIX: разработка сетевых приложений
17.4. Операции с файлами
17.4. Операции с файлами
Следующая группа вызовов начинается с FIO
и может применяться к определенным типам файлов в дополнение к сокетам. Мы рассматриваем только вызовы, применимые к сокетам [128, с. 553].
Следующие пять вызовов требуют, чтобы третий аргумент функции ioctl
указывал на целое число.
? FIONBIO
. Флаг отключения блокировки при выполнении операций ввода-вывода сбрасывается или устанавливается в зависимости от третьего аргумента функции ioctl
. Если этот аргумент является пустым указателем, то флаг сбрасывается (блокировка разрешена). Если же третий аргумент является указателем на единицу, то включается неблокируемый ввод-вывод. Этот вызов обладает тем же действием, что и команда F_SETFL
функции fcntl
, которая позволяет установить или сбросить флаг O_NONBLOCK
, задающий статус файла.
? FIOASYNC
. Флаг, управляющий получением сигналов асинхронного ввода-вывода (SIGIO
), устанавливается или сбрасывается для сокета в зависимости от того, является ли третий аргумент функции ioctl
пустым указателем. Этот флаг имеет то же действие, что и флаг статуса файла O_ASYNC
, который можно установить и сбросить с помощью команды F_SETFL
функции ioctl
.
? FIONREAD
. Возвращает число байтов, в настоящий момент находящихся в приемном буфере сокета, как целое число, на которое указывает третий аргумент функции ioctl
. Это свойство работает также для файлов, каналов и терминалов. Более подробно об этом вызове мы рассказывали в разделе 14.7.
? FIOSETOWN
. Эквивалент SIOCSPGRP
для сокета.
? FIOGETOWN
. Эквивалент SIOCGPGRP
для сокета.
- Урок 2.6. Операции с файлами и папками
- Операции с файлами и папками
- Часть III Системное программирование
- 5.1. Просмотр содержимого каталога
- Обмен файлами
- Владение файлами
- 8.2. Основные операции с мультимедийными файлами
- Операции над файлами
- 8.3. Функция fcntl(): блокировки и другие операции над файлами
- B1.1. Операции над файлами
- 7.6. Основные операции с файлами и папками
- 7.6.2. Операции с файлами