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

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

Реклама

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

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

Строки 117-130. Метод choke (). Следующим методом является choke (), который вызывается, если объем данных в выходном буфере превышает лимит данных или меньше этого лимита. Подобное может происходить при избыточных или недостаточных данных полученных. Выполнение метода начинается с поиска ссылки на код обратного вызова. Если эта ссылка определена, вызывается код и ему передается ссылка на текущий объект SessionData а также флажок, указывающий, должен ли быть сеанс поставлен под контроль или выпущен из-под контроля с помощью метода choke (). Если подпрограмма обратного вызова не определена, то просто вызывается метод readable () сеанса с ложным флажком для отмены дальнейшего ввода в этом сеансе, при этом буфер записи снова не будет иметь достаточный объем свободного места.

Строки 131-145. Методы readable () и writable (). Следующими двумя методами являются readable () и writable (). Они представляют собой внешний интерфейс к методу activate () объекта IO::SessionSet. Как будет показано в следующем разделе, первым параметром метода activate () является текущий объект IO::SessionData, вторым — строка “read” или “write”, а третьим — флажок, указывающий, должен ли быть заданный тип ввода-вывода активизирован или переведен в неактивное состояние.

Однако если сеанс отмечен как предназначенный только для записи, то метод readable () не пытается его активизировать.

Строки 146-157. Метод bail_out(). Последним методом в этом модуле является bail_out(), который вызывается при возникновении ошибок записи. В данной реализации метод bail_out( ) удаляет все буферизованные исходящие данные и закрывает сеанс. При­чина удаления необработанных данных состоит в том, что нужно немедленно выполнить за­крытие, а не ждать неопределенно долго возможности выполнить запись, которая теперь, как известно, вполне может закончиться аварийно.



2014-09-08 17:25:02

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


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


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


РЕКОМЕНДУЕМ

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