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

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

Реклама

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

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

Код Web-cepвepa с предварительным, формированием потоков, имеет больший объем, нежели простой многопоточный сервер. Это свидетельствует о том, что для координации работы многочисленных потоков должен применяться гораздо более сложный код. Проведем анализ программы.

Строки 1-8. Загрузка модулей. Загружаются модули IO::Socket, IO::File и IO::Select, а также Thread. Модуль Thread не импортирует функции cond_wait () и cond_broadcast () по умолчанию, поэтому они импортируются явно.

Строки 9-14. Определение констант. Определяются различные константы, используемые серве­ром, включая константу prethread со значением числа потоков, которые должны быть запущены в начале работы сервера; константы со значением верхней и нижней отметок, которые имеют тот же смысл, что и в серверах с предварительным ветвлением; и флажок debug для включения отладоч­ных сообщений. Определена также константа max_request, которая управляет тем, какое число транзакций должен принять поток, прежде чем самостоятельно завершит работу.

Строки 15-18. Объявление глобальных переменных. Переменная $accept_lock, как было описано ранее, используется для защиты функции accept () — чтобы только один поток одно­временно мог принимать входящие запросы на установление соединения из приемного сокета. Хеш % status содержит информацию о состоянии каждого потока, которая хранится под ключом, соответствующим идентификатору этого потока, а $status представляет собой условную пере­менную, применяемую и для блокировки хеша % status, и для указания на то, что он изменился. Переменная $done указывает главному потоку, что должен быть выполнен останов сервера.



2014-12-26 12:58:41

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


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


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


РЕКОМЕНДУЕМ

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