Commit cd2cef2f authored by Pavel Vainerman's avatar Pavel Vainerman

(codegen): добавлен вывод информации о текущих таймерах.

parent 00911199
...@@ -447,6 +447,17 @@ UniSetTypes::SimpleInfo* <xsl:value-of select="$CLASSNAME"/>_SK::getInfo( CORBA: ...@@ -447,6 +447,17 @@ UniSetTypes::SimpleInfo* <xsl:value-of select="$CLASSNAME"/>_SK::getInfo( CORBA:
inf &lt;&lt; "LogServer: " &lt;&lt; logserv_host &lt;&lt; ":" &lt;&lt; logserv_port &lt;&lt; endl; inf &lt;&lt; "LogServer: " &lt;&lt; logserv_host &lt;&lt; ":" &lt;&lt; logserv_port &lt;&lt; endl;
inf &lt;&lt; dumpIO() &lt;&lt; endl; inf &lt;&lt; dumpIO() &lt;&lt; endl;
inf &lt;&lt; endl; inf &lt;&lt; endl;
auto timers = getTimersList();
inf &lt;&lt; "Timers[" &lt;&lt; timers.size() &lt;&lt; "]:" &lt;&lt; endl;
for( const auto&amp; t: timers )
{
inf &lt;&lt; " " &lt;&lt; "[" &lt;&lt; t.id &lt;&lt; "]: msec="
&lt;&lt; setw(6) &lt;&lt; t.tmr.getInterval()
&lt;&lt; " timeleft=" &lt;&lt; setw(6) &lt;&lt; t.curTimeMS
&lt;&lt; " tick=" &lt;&lt; setw(3) &lt;&lt; ( t.curTick>=0 ? t.curTick : -1 )
&lt;&lt; endl;
}
inf &lt;&lt; endl;
inf &lt;&lt; vmon.pretty_str() &lt;&lt; endl; inf &lt;&lt; vmon.pretty_str() &lt;&lt; endl;
inf &lt;&lt; endl; inf &lt;&lt; endl;
inf &lt;&lt; getMonitInfo() &lt;&lt; endl; inf &lt;&lt; getMonitInfo() &lt;&lt; endl;
......
...@@ -193,6 +193,8 @@ class LT_Object ...@@ -193,6 +193,8 @@ class LT_Object
timeout_t sleepTime; /*!< текущее время ожидания */ timeout_t sleepTime; /*!< текущее время ожидания */
TimersList getTimersList();
private: private:
TimersList tlst; TimersList tlst;
/*! замок для блокирования совместного доступа к cписку таймеров */ /*! замок для блокирования совместного доступа к cписку таймеров */
......
...@@ -34,8 +34,8 @@ using namespace UniSetTypes; ...@@ -34,8 +34,8 @@ using namespace UniSetTypes;
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
LT_Object::LT_Object(): LT_Object::LT_Object():
lstMutex("LT_Object::lstMutex"), sleepTime(UniSetTimer::WaitUpTime),
sleepTime(UniSetTimer::WaitUpTime) lstMutex("LT_Object::lstMutex")
{ {
tmLast.setTiming(UniSetTimer::WaitUpTime); tmLast.setTiming(UniSetTimer::WaitUpTime);
} }
...@@ -154,6 +154,13 @@ timeout_t LT_Object::getTimeLeft(TimerId timerid) ...@@ -154,6 +154,13 @@ timeout_t LT_Object::getTimeLeft(TimerId timerid)
return 0; return 0;
} }
// ------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------
LT_Object::TimersList LT_Object::getTimersList()
{
uniset_rwmutex_rlock l(lstMutex);
TimersList lst(tlst);
return std::move(lst);
}
// ------------------------------------------------------------------------------------------
timeout_t LT_Object::askTimer( UniSetTypes::TimerId timerid, timeout_t timeMS, clock_t ticks, UniSetTypes::Message::Priority p ) timeout_t LT_Object::askTimer( UniSetTypes::TimerId timerid, timeout_t timeMS, clock_t ticks, UniSetTypes::Message::Priority p )
{ {
......
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