FFL  1.0
Finfly Foundation Library
Классы | Открытые члены | Защищенные члены | Закрытые члены | Закрытые данные
Класс ffl::cssc::multithreaded::service

Служба для многопоточного сервера приложений. Подробнее...

Граф наследования:ffl::cssc::multithreaded::service:
Inheritance graph
[см. легенду]

Полный список членов класса

Классы

class  server
 Сервер приложений службы. Подробнее...

Открытые члены

 service (cssc::service::context &_c) throw ()
 Стандартный конструктор службы.
void run (int _argc, const char *_argv[]) throw ()
 Запустить службу.

Защищенные члены

virtual servercreate (int _max_users, int _max_processors, const char *_path, long _idle_timeout)=0 throw (...)
 Создать объект сервера.
virtual void adjust (int &_max_users, int &_max_processors, std::string &_path, long &_idle_timeout) throw (...)
 Настройка параметров сервера.

Закрытые члены

serverinitialize (int _argc, const char *_argv[]) throw (...)
void stop () throw ()
 Завершить сервер.

Закрытые данные

std::auto_ptr< serverServer
 Указатель на объект сервера.

Подробное описание

Служба для многопоточного сервера приложений.


Конструктор(ы)

ffl::cssc::multithreaded::service::service ( cssc::service::context _c) throw () [inline]

Стандартный конструктор службы.

Аргументы:
[in]_cКонтекст запуска службы.

Переопределяет метод предка ffl::cssc::service.


Методы

virtual void ffl::cssc::multithreaded::service::adjust ( int &  _max_users,
int &  _max_processors,
std::string &  _path,
long &  _idle_timeout 
) throw (...) [inline, protected, virtual]

Настройка параметров сервера.

Производный класс может использовать этот метод для задания или изменения параметров сервера, если это невозможно или не желательно делать через параметры командной строки.

Аргументы:
[in,out]_max_usersМаксимальное количество пользователей.
[in,out]_max_processorsМаксимальное количество пользователей.
[in,out]_pathПуть, где будут создаваться файлы жерналов.
[in,out]_idle_timeoutВремя простоя сервера.
Исключения:
std::exceptionОшибка при изменение параметров.
virtual server* ffl::cssc::multithreaded::service::create ( int  _max_users,
int  _max_processors,
const char *  _path,
long  _idle_timeout 
) throw (...) [protected, pure virtual]

Создать объект сервера.

Аргументы:
[in]_max_usersМаксимальное количество пользователей.
[in]_max_processorsМаксимальное количество пользователей.
[in]_pathПуть, где будут создаваться файлы жерналов.
[in]_idle_timeoutВремя простоя сервера.
Возвращает:
Указатель на созданный объект сервера.
Исключения:
std::exceptionОшибка при создании сервера.
void service::run ( int  _argc,
const char *  _argv[] 
) throw ()

Запустить службу.

Создает и запускает многопоточный сервер. Аргументы службы:

-u <максимальное количество пользователей> -p <максимальное количество потоков> -a <имя хоста> -s <имя службы>

Аргументы -u, -p и -s являются обязательными, аргумент -a может не указываться. Если аргумент -a не указан, то служба доступна через все интерфейсы.

Аргументы:
[in]_argcКоличество аргументов службы.
[in]_argvАгрументы службы.
void ffl::cssc::multithreaded::service::stop ( ) throw () [inline, private, virtual]

Завершить сервер.

Изменение состояния службы обрабатывает сервер.

Переопределяет метод предка ffl::cssc::service.


Объявления и описания членов классов находятся в файлах:
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Макросы