Commit ceb9fce3 authored by Pavel Vainerman's avatar Pavel Vainerman

Разборка с ev::timer

parent 6e0c6fc2
......@@ -16,7 +16,7 @@
Name: libuniset2
Version: 2.6
Release: alt29
Release: alt30
Summary: UniSet - library for building distributed industrial control systems
License: LGPL
......@@ -508,6 +508,9 @@ rm -f %buildroot%_libdir/*.la
# history of current unpublished changes
%changelog
* Sat Jun 03 2017 Pavel Vainerman <pv@altlinux.ru> 2.6-alt30
- test build (devel)
* Fri Jun 02 2017 Pavel Vainerman <pv@altlinux.ru> 2.6-alt29
- test build (devel)
......
......@@ -150,7 +150,6 @@ namespace uniset
private:
timeout_t timeout = { UniSetTimer::WaitUpTime };
timeout_t cmdTimeout = { 2000 };
Debug::type sessLogLevel = { Debug::NONE };
size_t sessMaxCount = { 10 };
......
......@@ -105,7 +105,7 @@ namespace uniset
void logOnEvent( const std::string& s ) noexcept;
timeout_t cmdTimeout = { 2000 };
float checkConnectionTime = { 10. }; // время на проверку живости соединения..(сек)
double checkConnectionTime = { 10. }; // время на проверку живости соединения..(сек)
// Т.к. сообщений может быть ОЧЕНЬ МНОГО.. сеть медленная
// очередь будет не успевать рассасываться,
......
......@@ -102,7 +102,9 @@ namespace uniset
{
sessTimeout = t;
if( ioTimeout.is_active() )
if( t <= 0 )
ioTimeout.stop();
else if( ioTimeout.is_active() )
ioTimeout.start(t);
}
// -------------------------------------------------------------------------
......@@ -123,6 +125,7 @@ namespace uniset
io.start(sock->getSocket(), ev::READ);
ioTimeout.set(loop);
if( sessTimeout > 0 )
ioTimeout.start(sessTimeout);
}
// -------------------------------------------------------------------------
......@@ -159,7 +162,7 @@ namespace uniset
terminate();
}
else
else if( sessTimeout > 0 )
ioTimeout.start(sessTimeout); // restart timer..
}
// -------------------------------------------------------------------------
......
......@@ -70,7 +70,6 @@ namespace uniset
}
// -------------------------------------------------------------------------
LogServer::LogServer():
timeout(UniSetTimer::WaitUpTime),
cmdTimeout(2000),
sessLogLevel(Debug::NONE),
sock(nullptr),
......
......@@ -246,9 +246,9 @@ namespace uniset
evterm.start();
evprep.start();
// делаем очень маленькое время старта
// нам нужен "одноразовый таймер"
// т.к. нам надо просто зафиксировать, что loop начал работать
evruntimer.start(0, 0.001);
evruntimer.start(0);
isrunning = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment