<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Texto de globo Car";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.EstiloCorreo17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.TextodegloboCar
        {mso-style-name:"Texto de globo Car";
        mso-style-priority:99;
        mso-style-link:"Texto de globo";
        font-family:"Tahoma","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=ES link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>Dear Ross,</span><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>we are trying now change the
treatment of the EventLoop because all our problems is the multithreading using
the schedule. We changed our code using now only one thread to control that
Eventloop.</span><span lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>We do this steps:</span><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>1.-</span></b><span lang=EN-US style='color:
black'> Creation of the BasicUsageEnvironment with one schedule.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>2.-</span></b><span lang=EN-US style='color:
black'> Initialization of all threads using that Environment.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>3.-</span></b><span lang=EN-US style='color:
black'> Start the EventLoop.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>4.-</span></b><span lang=EN-US style='color:
black'> Our application processes.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>5.-</span></b><span lang=EN-US style='color:
black'> To destroy, we have the problems in that point, we start doing the next
code to destroy each thread (no EventLoop thread):<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='color:black'>----------------------------------<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><i><span
lang=EN-US style='color:black'>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
blockingValue = ~0; // Value to Stop the EventLoop <br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; while() //Wait until the EventLoop is
stopped</span></i><span lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='color:black'>----------------------------------<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><i><span
lang=EN-US style='color:black'>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
Medium::close(ourClient); // RTSPClient* ourClient<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; g_pCaptureCtrl-&gt;m_bEnv-&gt;reclaim();
// UsageEnvironment* m_bEnv;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; StopCaptureFrame(); //Stop and destroy
one thread</span></i><span lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='color:black'>----------------------------------<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span
lang=EN-US style='color:black'>6.-</span></b><span lang=EN-US style='color:
black'> After that, we try to restart again all the threads (EventLoop thread
too) repeating point <b>1</b>. Then the program crashes and we can look in the
call stack that information:<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='color:black'>----------------------------------<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><i><span
lang=EN-US style='color:black'>memmove(unsigned char * 0x00000000, unsigned
char * 0x02a74f74, unsigned long 1460) line 171<br>
GRABADORA5! BufferedPacket::use(unsigned char *,unsigned int,unsigned int
&amp;,unsigned int &amp;,unsigned short &amp;,unsigned int &amp;,struct timeval
&amp;,unsigned int &amp;,unsigned int &amp;) + 110 bytes<br>
GRABADORA5! MultiFramedRTPSource::doGetNextFrame1(void) + 232 bytes<br>
GRABADORA5! MultiFramedRTPSource::networkReadHandler(class MultiFramedRTPSource
*,int) + 577 bytes<br>
GRABADORA5! BasicTaskScheduler::SingleStep(unsigned int) + 441 bytes<br>
GRABADORA5! BasicTaskScheduler0::doEventLoop(char *) + 26 bytes<br>
CCaptureCtrl::ThreadFunc(void * 0x0283de80) line 1922 + 34 bytes<br>
GRABADORA5! const DelayQueue::`vftable' address 0x006a4fd8<br>
GRABADORA5! BasicTaskScheduler0::~BasicTaskScheduler0(void) + 47 bytes<br>
fffffcd8()</span></i><span lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='color:black'>----------------------------------<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>The error is produced when we
try to call the first time again the EventLoop:</span><span lang=EN-US
style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>---------------------------</span><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><i><span
lang=EN-US style='font-size:11.0pt;color:black'>pCapCtrl-&gt;m_bEnv-&gt;taskScheduler().doEventLoop(&amp;pCapCtrl-&gt;m_cBlockingValue/*0*/);</span></i><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>---------------------------</span><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>Can do you help us to solve
that?</span><span lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>Best Regards and Thank you in
advance,<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span
lang=EN-US style='font-size:11.0pt;color:black'>Josep Aguilera</span><span
lang=EN-US style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif"'><o:p>&nbsp;</o:p></span></p>

</div>

</body>

</html>