<div class="xam_msg_class">
<div style="font: normal 12.7272720336914px Arial; color:rgb(0, 0, 0);"><div>Dear All,</div><div><br></div> <span style="font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; font-size: 13.6000003814697px; line-height: 17.8048000335693px; background-color: transparent;">I'm using Live555 to realize a C++ RTPS client for IP cameras. I'm using most of the testRTSPClient code.</span><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">I used Poco library and Poco::Thread class too.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">In other words any client for each camera runs in a separate thread that owns his instance of Live555 objects (any thread uses an instance with his UsageEnvironment and TaskScheduler).. This to avoid shared variables and synchronization stuff. It seems to works well and fast.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">My runnable (following the Poco library requirements) object IPCamera has the run method as simple as:</p><pre class="lang-cpp prettyprint prettyprinted" style="margin-top: 0px; margin-bottom: 10px; padding: 5px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; overflow: auto; width: auto; max-height: 600px; word-wrap: normal; line-height: 17.8048000335693px; background: rgb(238, 238, 238);"><code style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; white-space: inherit; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"><span class="kwd" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(0, 0, 139); background: transparent;">void</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="typ" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(43, 145, 175); background: transparent;">IPCamera</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">::</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">run</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">()</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">{</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
openURL</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">(</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">_myEnv</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">,</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="str" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(128, 0, 0); background: transparent;">""</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">,</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> _myRtspCommand</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">.</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">c_str</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">(),</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">*</span><span class="kwd" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(0, 0, 139); background: transparent;">this</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">);</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="com" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(128, 128, 128); background: transparent;">//taken from the testRTSPClient example </span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
_myEnv</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">-></span><span class="typ" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(43, 145, 175); background: transparent;">TaskScheduler</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">().</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">doEventLoop</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">(&</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">_watchEventLoopVariable</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">);</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="com" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(128, 128, 128); background: transparent;">//it runs until _watchEventLoopVariable change to a value != 0</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="com" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(128, 128, 128); background: transparent;">//exit from the run;</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">}</span></code></pre><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">When the run is finished I call also the join() to close the thread (by the way I find out that if I don't call myThread->join() the memory is not freed totaly).</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">When I make the shutdown, following the requirments in Live555-devel I put in my code:</p><pre class="lang-cpp prettyprint prettyprinted" style="margin-top: 0px; margin-bottom: 10px; padding: 5px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; overflow: auto; width: auto; max-height: 600px; word-wrap: normal; line-height: 17.8048000335693px; background: rgb(238, 238, 238);"><code style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif; white-space: inherit; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="kwd" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(0, 0, 139); background: transparent;">void</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> </span><span class="typ" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(43, 145, 175); background: transparent;">IPCamera</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">::</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">shutdown</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">()</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">{</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">...</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
_myEnv</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">-></span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">reclaim</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">();</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="kwd" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; color: rgb(0, 0, 139); background: transparent;">delete</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;"> _myScheduler</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">;</span><span class="pln" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">
</span><span class="pun" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; background: transparent;">}</span></code></pre><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Using Valgrind to detect memory leaks I saw a strange behaviour:</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">1) case: Run the program - Close the program with all the IPCameras that run in the proper manner.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">a) At the end of the program all the distrucotors are invoked.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">b) exit from doEvenLoop().</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">c) join the thread (actually is terminated because it exits from run method.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">d) destroy the _myEnv and _myScheduler as showed.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">e) destroy all the others objects, including IPCamera and Thread associated.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">-> no memory leaks are found by Valgrind. Ok</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Now comes the problem.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">2) case: I'm implementing a use case where a Poco::Timer checks every X seconds if the camera is alive using ICMP ping. It raises an event (using Poco events) in case it doesn't answer because the network is down and I do the follow:</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">IPCamera down or network down :</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">a) put the _watchEventLoopVariable = 1 to exit from the run method;</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">b) shutdown the client associated to the IPCamera as showed</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">c) join the thread</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">At this point I don't destroy the thread because I would like to reuse it when the network cames up again and the camera works again.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">in this case:</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"> a)I set the _eventWatchVariable = 0. </p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">b) Let start again the thread with: myThread->run()</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"><br></p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Valgrind tells me that memory leaks (or something else that lost bytes) are found: 60 bytes direct, 20.000 indirect bytes are lost in the thread,</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"> in the H264BufferdPackedFactory::createNewPacket(...) by ReorederingPacketBuffer::getFreePacket() by SocketDescriptor::tcpReadHandler() by BasicTaskScheduler::singleStep().</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">I'm going crazy. Why this behaviour in this case? Does someone solve this case? How to avoid this? 3 days of debugging and alternative solutions, but...nothing. If the nwtwork is always on, the memory is ok. If the network goes down, the memory leak is there. And the same logic is applied to my sw.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Thank you.</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;"><br></p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Cristiano Chieppa</p><p style="margin-top: 0px; padding: 0px; border: 0px; font-size: 13.6000003814697px; vertical-align: baseline; clear: both; font-family: Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif; line-height: 17.8048000335693px; background-image: initial; background-attachment: initial; background-size: initial; background-origin: initial; background-clip: initial; background-position: initial; background-repeat: initial;">Elmax</p></div>
</div>