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

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

Реклама

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

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

Главный поток контролирует изменения в хеше %STATUS и выполняет соответствующие действия. Для повышения эффективности работы этого потока необходимо предусмотреть способ передачи ему информации о том, что рабочий поток внес изменения в хеш % STATUS. Наилучший способ состоит в использовании условной переменной. При каждом проходе по циклу главный поток вызывает функцию cond_wait () с указанием условной переменной, переходя в состояние ожидания до тех пор, пока один из рабочих потоков не укажет, что эта переменная изменилась. В коде подпрограммы status предусмотрен вызов подпрограммы cond_broadcast() при внесении каждого изменения в хеш % STATUS рабочим пото­ком, что приводит к активизации главного потока и дает ему возможность выполнить управленческие функции, связанные с этим изменением.

Еще одной особенностью является то, что для адаптивного сервера должен быть предусмотрен способ корректного останова. Как и прежде, сервер отвечает на сигна­лы TERM и INT, выполняя останов, но как может главный поток сообщить своим мно­гочисленным рабочим потокам о том, что настало время останова?

В настоящее время не существует способа доставки сигнала конкретному потоку. Для этого предусмотрено, что каждый рабочий поток периодически проверяет ра­венство своего кода состояния специальному значению “goner” и при выполнении этого условия завершает работу. Для останова рабочего потока главный поток просто вызывает подпрограмму status () для соответствующей установки кода состояния рабочего потока.



2014-12-26 12:51:42

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


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


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


РЕКОМЕНДУЕМ

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