|
UniSet
2.6.0
|
Открытые члены | |
| bool | check (const std::string &_ip, int _port, timeout_t tout) |
| bool | check (const std::string &iaddr, timeout_t tout) |
| bool | ping (const std::string &_ip, timeout_t tout=1000, const std::string &ping_argc="-c 1 -w 0.1 -q -n") |
Защищенные члены | |
| void | check_thread () |
| void | ping_thread () |
Защищенные данные | |
| std::condition_variable | thr_event |
| std::mutex | thr_mutex |
| std::atomic_bool | thr_finished = { false } |
| std::atomic_bool | result = {false} |
| std::string | ip = {""} |
| int | port = {0} |
| int | tout_msec |
| std::string | ping_args = {"-c 1 -w 0.1 -q -n"} |
Вспомогательный класс для проверки связи, реализованный через создание потока, чтобы при проверке не было "зависания" при недоступности адреса. Смысл: создаётся поток, в нём происходит проверка, а в вызвавший поток приостанавливается на время timeout, по истечении которого созданный поток "принудительно"(в любом случае!) уничтожается..
| bool uniset::TCPCheck::check | ( | const std::string & | _ip, |
| int | _port, | ||
| timeout_t | tout | ||
| ) |
Проверка связи с сервисом на определённом порту
| _ip | - ip проверяемого узла |
| _port | - порт для проверяемого узла |
| tout | - таймаут на попытку |
Для проверки идёт попытка открыть соединение, но данные не посылаются, а соединение сразу закрывается.
| bool uniset::TCPCheck::check | ( | const std::string & | iaddr, |
| timeout_t | tout | ||
| ) |
| iaddr | - 'ip:port' |
| bool uniset::TCPCheck::ping | ( | const std::string & | _ip, |
| timeout_t | tout = 1000, |
||
| const std::string & | ping_argc = "-c 1 -w 0.1 -q -n" |
||
| ) |
Проверка связи с узлом командой ping
1.7.6.1