UniSet  1.4.0
Открытые члены | Защищенные члены | Друзья
Класс SystemGuard

#include <SystemGuard.h>

Граф наследования:SystemGuard:
ObjectsActivator ObjectsManager UniSetObject

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

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

 SystemGuard (UniSetTypes::ObjectId id)
virtual void run (bool thread=false)
virtual void stop ()
virtual void oaDestroy (int signo=0)
virtual UniSetTypes::SimpleInfogetInfo ()
virtual UniSetTypes::ObjectType getType ()

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

void execute ()
virtual void sigterm (int signo)
virtual bool pingNode ()
virtual void updateNodeInfo (const UniSetTypes::NodeInfo &newinf)
virtual void watchDogTime ()
virtual void dumpStateInfo ()
virtual void autostart ()

Друзья

class ThreadCreator< SystemGuard >

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

Предназначен для слежения за исправностью работы процессов. А так же отслеживает наличие связи c узлами и обновляет эту информацию в ListOfNodes.


Методы

void SystemGuard::run ( bool  thread = false) [virtual]

Если thread=true то функция создает отдельный поток для обработки приходящих сообщений. И передает все ресурсы этого потока orb. А также регистрирует процесс в репозитории.

Заметки:
Только после этого объект становится доступен другим процессам А далее выходит... Иначе все ресурсы основного потока передаются для обработки приходящих сообщений (и она не выходит)

Переопределяет метод предка ObjectsActivator.

Перекрестные ссылки UniSetTypes::unideb.

void SystemGuard::sigterm ( int  signo) [protected, virtual]

Функция вызываемая при приходе сигнала завершения или прерывания процесса. Переопределив ее можно выполнять специфичные для процесса действия по обработке сигнала. Например переход в безопасное состояние.

Предупреждения:
В обработчике сигналов ЗАПРЕЩЕНО вызывать функции подобные exit(..), abort()!!!!

Переопределяет метод предка ObjectsManager.

Перекрестные ссылки PassiveTimer::setTiming(), UniSetTypes::unideb и UniSetTimer::WaitUpTime.

void SystemGuard::stop ( ) [virtual]

Функция останавливает работу orb и завершает поток. А так же удаляет ссылку из репозитория.

Заметки:
Объект становится недоступен другим процессам

Переопределяет метод предка ObjectsActivator.

Перекрестные ссылки UniSetTypes::unideb.


Объявления и описания членов классов находятся в файлах: