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

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

Реклама

Perl для IP-Телефонии (39 – предобработка мультипроцессов, часть 39)

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

Строки 31-43. Цикл проверки состояния. По мере обработки входящих соединений дочерние процессы обновляют хеш % status, и эти изменения немедленно становятся доступными для ро­дительского процесса. Однако было бы крайне неэффективным создание цикла, предназначен­ного только для проверки наличия изменений в хеше % status. Обязанность сообщать об изме­нениях в хеше % status возлагается на дочерние процессы, а родительский процесс ожидает по­ступления сигнала. Предусматривается применение двух сигналов: alrm, отправляемого дочерним процессом при внесении им изменений в хеш % status, и chld, отправляемого опера­ционной системой при завершении работы дочернего процесса по любой причине,

Программа входит в цикл, который завершается после того, как переменная $done принимает истинное значение. В начале цикла вызывается функция sleep (), которая переводит процесс в состояние ожидания до получения некоторого сигнала. После возврата из функции sleep () обрабатывается хеш % status точно как же, как и прежде, — запуск новых дочерних процессов и уничтожение старых для поддержания числа простаивающих дочерних процессом между нижней и верхней отметками.

Строки 44-47. Завершение работы. После выхода из главного цикла вызывается подпрограмма kill_children() модуля Daemon для завершения работы всех действующих дочерних процессов, выполняется вывод определенных диагностических сообщений и сервер останавливается.

Строки 48-56. Подпрограмма make_new_child (). Эта подпрограмма аналогична применяемой в первой версии адаптивного сервера, за исключением того, что в ней больше не осуществляется управление каналом. Как и в предыдущей версии, вызывается подпрограмму launch_child () модуля Daemon и в качестве параметра с указанием процедуры обратного вызова применяется подпрограмма cleanup_child ( ) .



2014-12-18 23:34:40

это интересно
Всем известно универсальное средство упаковки и для бытовых отходов и для удобство доставки. Конечно же это - пoлимepныe изделия из ПВД и ПНД, способные принимать любые формы, даже самые неожиданные. Заказать необходимое можно на сайте http://plenka40.ru/ упаковка для склада , также здесь можно подобрать необходимые размеры, цвет, материал.

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


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


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


РЕКОМЕНДУЕМ

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