Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (36 – Неблокирующий ввод-вывод, часть 1)

предыдущая часть ««»» следующая часть

Неблокирующий ввод-вывод

По умолчанию в большинстве операционных систем ввод-вывод является блоки­рующим. Если запрос на чтение или запись некоторых данных не может быть выполнен немедленно, то операционная система переводит программу в состояние ожидания до тех пор, пока вызов не будет выполнен, или вырабатывает сообщение об ошибке. Это не вызывает проблем при выполнении большинства задач программирования, посколь­ку дисководы, окна терминалов и другие устройства ввода-вывода работают относи­тельно быстро, по крайней мере, с точки зрения человека. Однако, как было показано в предыдущей главе, блокировка затрудняет создание программ для систем кли­ент/сервер, поскольку единственный заблокированный сетевой вызов может привести к зависанию всей программы и переводу всех прочих запросов в состояние ожидания.

Во избежание таких проблем при операциях чтения или записи можно либо приме­нить несколько параллельно работающих потоков выполнения, как при использовании мультипроцессных и многопоточных серверов, либо использовать функцию select () для определения того, какие дескрипторы файлов готовы к вводу-выводу. Однако по­следний подход создает другую проблему, поскольку сокет или другой дескриптор файла все равно может быть заблокирован при выполнении функции syswrite (), если будет предпринята попытка записать больше данных, чем он может принять. В этом случае попытка записи блокируется и программа останавливается. Для предотвращения этой ситуации можно использовать неблокирующий ввод-вывод.



2014-07-23 12:53:03

это интересно
Многообразие различного видео формата зачастую требует чтобы видео/аудио проигрыватель был универсальным и обладал максимальной функциональностью. Одним из таких является Gom Player http://gom-player.joydownload.ru/ , который был создан еще в 2003 году и с того момента наращивал свой потенциал. Данный плеер поддерживает все основные форматы и отличается стабильной работой и четкой передачей изображения.

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония