<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
 --></style><title>Re: [Live-devel] Threads and event
loops</title></head><body>
<blockquote type="cite" cite>I followed all the posts about threading
and event loops some days ago. I also reviewed the FAQ once more and
because I had done it several times in the past, it seems to me that
the recommendation &quot;Such a configuration is not recommended,
however; instead, it is safer to structure such an application as
multiple<i> processes</i>, not multiple threads.&quot; has been added
recently and was not there just some weeks ago. Am I
right?</blockquote>
<div><br></div>
<div>Yes.</div>
<div><br>
<br>
</div>
<blockquote type="cite" cite>When this configuration (more event loops
running in separate threads with dedicated usage environments and task
schedulers) is not recommended any more, it is bad news for us because
our application is structured exactly in this
configuration.</blockquote>
<div><br></div>
<div>Don't worry - I just said &quot;not recommended&quot;, not
&quot;you cannot do this&quot; (which I couldn't enforce anyway,
because this is Open Source :-)</div>
<div><br></div>
<div><br></div>
<blockquote type="cite" cite>&nbsp;Nevertheless, we have not seen any
problems in this configuration so far, in our tests we are running up
to 20 threads in one process, each thread is responsible for exactly
one RTSP server. Could you, please, be more specific why this
configuration is not recommended? Are there any known problems with
this configuration? (I think the problem can be some static variables
but since we&nbsp;compiled the live555 code to a Windows COM library
and create one instance of a COM object for each RTSP client, maybe
the static variables are not touched by other instances, but I am not
sure about this).</blockquote>
<div><br></div>
<div>We recently saw a problem (with multiple threads in a single
process) caused by a static variable.&nbsp; There might be others; I
can't say for sure.</div>
<div><br></div>
<div><br></div>
<blockquote type="cite" cite>Finally, according to my opinion, this
approach is far better than having just one thread to be responsible
for many RTSP servers because the code contains
blocking&nbsp;operations</blockquote>
<div><br></div>
<div>Yes, the current implementation of &quot;RTSPClient&quot; is
inadequate (because it contains blocking operations).&nbsp; This is
being fixed (please be patient :-)</div>
<x-sigsep><pre>-- 
</pre></x-sigsep>
<div><br>
Ross Finlayson<br>
Live Networks, Inc.<br>
http://www.live555.com/</div>
</body>
</html>