<div><br><span class="q"><font size="2">ACE VERSION: 5.5.8<br><br>HOST MACHINE and OPERATING SYSTEM:<br>Windows XP Professional and Enterprise Linux 5.0<br><br>Version 2002<br><br>TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO<br>
<br>COMPILER NAME AND VERSION (AND PATCHLEVEL):<br><br>Visual studio 2005<br><br>THE $ACE_ROOT/ace/config.h FILE<br><br>#include &quot;ace/config-win32.h&quot; &nbsp; for windows<br><br>#include &quot;ace/config-linux.h&quot; &nbsp; for linux<br>
<br>DOES THE PROBLEM AFFECT:<br><br>&nbsp;&nbsp;&nbsp;&nbsp;COMPILATION? &nbsp; NO<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LINKING? &nbsp; &nbsp; &nbsp; NO<br><br>&nbsp;&nbsp;&nbsp;EXECUTION? &nbsp; &nbsp; YES<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OTHER<br><br>&nbsp;&nbsp;&nbsp;SYNOPSIS:</font></span></div>
<div><span class="q"><font size="2">Thanks for the Guidance.</font></span></div>
<div><span class="q"><font size="2">I have made the copy of <font color="#550055" size="2">ACE_ROOT/tests/Process_Mutex_Test.cpp and </font>when i m trying to run ACE_ROOT/tests/Process_Mutex_Test.cpp&nbsp; by modifying the ACE_Process_Mutex&nbsp; to ACE_RW_Process_mutex&nbsp; with command line arguments as <strong>-n mutex</strong> , I m getting&nbsp; <strong>abort&nbsp; status</strong> after the parent has spawned the first child process,acquired the mutex,worked for somewhile &nbsp;and released the mutex.</font></span></div>

<div><span class="q"><font size="2">DESCRIPTIOM</font></span></div>
<div><span class="q"><font size="2">I want to have a the multiple readers to have <strong>simulatenous access to a shared data</strong>.</font></span></div>
<div><span class="q"><font size="2">Is there any count we can maintain to have the number of active readers(reader processes)</font></span></div>
<div><span class="q"><font size="2"></font></span>&nbsp;</div>
<div><span class="q"><font size="2">Thanks</font></span></div>
<div><span class="q"><font size="2">Kul</font></span></div>
<div><span class="q"><font size="2"></font></span>&nbsp;</div>
<div><span class="q"><font size="2"></font></span>&nbsp;</div>
<div><span class="gmail_quote"><font size="2">On 3/10/08, <b class="gmail_sendername">Douglas C. Schmidt</b> &lt;<a href="mailto:schmidt@dre.vanderbilt.edu">schmidt@dre.vanderbilt.edu</a>&gt; wrote:</font></span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><font size="2">Hi,<br><br>Thanks for using the PRF.<br><br>&gt;&gt; ACE VERSION: 5.5.8<br><br>BTW, please upgrade to ACE+TAO+CIAO x.6.3 (i.e., ACE 5.6.3, TAO 1.6.3,<br>
and CIAO 0.6.3), which you can download from<br><br><a href="http://download.dre.vanderbilt.edu">http://download.dre.vanderbilt.edu</a><br><br>under the heading: &quot;Latest Beta Kit.&quot;<br><br>The DOC groups at Washington University, UC Irvine, and Vanderbilt<br>
University only provide &quot;best effort&quot; support for non-sponsors for the<br>latest release, as described in<br><br><a href="http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-bug-process.html">http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/docs/ACE-bug-process.html</a><br>
<br>Thus, if you need more &quot;predictable&quot; help for earlier versions of<br>ACE+TAO, I recommend that you check out<br><br><a href="http://www.dre.vanderbilt.edu/support.html">http://www.dre.vanderbilt.edu/support.html</a><br>
<br>for a list of companies that will provide you with ACE+TAO commercial<br>support.<br><br>&gt;&gt; HOST MACHINE and OPERATING SYSTEM:<br>&gt;&gt; Windows XP Professional and Enterprise Linux 5.0<br>&gt;&gt;<br>&gt;&gt; Version 2002<br>
&gt;&gt;<br>&gt;&gt; TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO<br>&gt;&gt;<br>&gt;&gt; COMPILER NAME AND VERSION (AND PATCHLEVEL):<br>&gt;&gt;<br>&gt;&gt; Visual studio 2005<br>&gt;&gt;<br>&gt;&gt; THE $ACE_ROOT/ace/config.h FILE<br>
&gt;&gt;<br>&gt;&gt; #include &quot;ace/config-win32.h&quot;&nbsp;&nbsp; for windows<br>&gt;&gt;<br>&gt;&gt; #include &quot;ace/config-linux.h&quot;&nbsp;&nbsp; for linux<br>&gt;&gt;<br>&gt;&gt; DOES THE PROBLEM AFFECT:<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; COMPILATION?&nbsp;&nbsp; NO<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LINKING?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NO<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;EXECUTION?&nbsp;&nbsp;&nbsp;&nbsp; YES<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OTHER<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;SYNOPSIS:<br>&gt;&gt; Adding a sleep(0) after the statement of releasing mutex ,single writer<br>
&gt;&gt; and reader is in sync.<br>&gt;&gt;<br>&gt;can u pl;ease let me know how to use the the ACE_RW_Process_mutex for<br>&gt;multiple readers.??<br>&gt;<br>&gt;<br>&gt;&gt;<br>&gt;&gt; DESCRIPTION.<br>&gt;&gt; I am writing the code below.<br>
&gt;&gt;<br>&gt;<br>&gt;I want to implement the same for multiple readers.can u please hint me about<br>&gt;the same or if there is any sample of using ACE_RW_Process_mutex.<br><br>I don&#39;t think there are any examples of ACE_RW_Process_Mutex, so I<br>
recommend you make a copy of<br><br>ACE_ROOT/tests/Process_Mutex_Test.cpp<br><br>and update it to use ACE_RW_Process_Mutex.&nbsp;&nbsp;Again, if you need more<br>help, I recommend that you check out<br><br><a href="http://www.dre.vanderbilt.edu/support.html">http://www.dre.vanderbilt.edu/support.html</a><br>
<br>for a list of companies that will provide you with ACE+TAO commercial<br>support.<br><br>Thanks,<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Doug<br><br>&gt;&nbsp;&nbsp;int ACE_TMAIN (int argc, ACE_TCHAR *argv[])<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; {<br>&gt;&gt;<br>
&gt;&gt; int count =0;<br>&gt;&gt;<br>&gt;&gt; float ltime=0;<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; ACE_RW_Process_Mutex m_RWMutex(ACE_TEXT(&quot;MyMutex&quot;));<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; if (agrc == 1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// For server which is writing<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (1)<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (m_RWMutex.acquire_write() == 0)<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ltime = ::GetTickCount();&nbsp;&nbsp;//number of millisec since the<br>&gt;&gt; system has started<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::printf(&quot;Writer acquired...%d&nbsp;&nbsp;at:<br>&gt;&gt; %f\n&quot;,count++,ltime);<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::sleep(2);<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ltime = ::GetTickCount();<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::printf(&quot;Writer releasing... ...%d&nbsp;&nbsp;at:<br>&gt;&gt; %f\n&quot;,count++,ltime);<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m_RWMutex.release();<br>&gt;&gt;<br>&gt;<br>&gt; ACE_OS::sleep(0);<br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>
&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//For Client which is reading<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while (1)<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (m_RWMutex.acquire_read() == 0)<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ltime = ::GetTickCount();<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::printf(&quot;Reader acquired... ...%d&nbsp;&nbsp;at:<br>&gt;&gt; %f\n&quot;,count++,ltime);<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::sleep(2);<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ltime = ::GetTickCount();<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::printf(&quot;Reader releasing...%d&nbsp;&nbsp;at:<br>&gt;&gt; %f\n&quot;,count++,ltime);<br>
&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m_RWMutex.release();<br>&gt;&gt;<br>&gt;<br>&gt;ACE_OS::sleep(0);<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; }<br>&gt;&gt;<br>&gt;&gt;&nbsp;&nbsp;&nbsp;&nbsp; return 0;<br>
&gt;&gt;<br>&gt;&gt; }<br>&gt;&gt;<br>&gt;&gt; OUTPUT&nbsp;&nbsp;is like this(WITH ACE_RW_Process_Mutex):<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Writer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TimeStamp(in millisec)<br>&gt;&gt;<br>&gt;&gt;<br>
&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88110592<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88112592<br>&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88112592<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp; at&nbsp;&nbsp; 88114592<br>
&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88114592<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88116592<br>&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88116592<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88118592<br>
&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Reader<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88112872<br>&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88114872<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88114872<br>
&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88116872<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88116872<br>&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88118872<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88118872<br>
&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; OUTPUT is like this (WITH ACE_Process_Mutex):<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Writer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TimeStamp(in millisec)<br>&gt;&gt;<br>
&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp;&nbsp;&nbsp;88560984<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88562984<br>&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88562984<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp; at&nbsp;&nbsp; 88564984<br>
&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88566984<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88568984<br>&gt;&gt;<br>&gt;&gt; writer acquired&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88570984<br>&gt;&gt;<br>&gt;&gt; writer released&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88572984<br>
&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Reader<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88564984<br>&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88566984<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88568984<br>
&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88570984<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88572984<br>&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88574984<br>&gt;&gt;<br>&gt;&gt; Reader acquired&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88576984<br>
&gt;&gt;<br>&gt;&gt; Reader released&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88578984<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Thanks<br>&gt;&gt;<br>&gt;&gt; Kul<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; On 3/4/08, Douglas C. Schmidt &lt;<a href="mailto:schmidt@dre.vanderbilt.edu">schmidt@dre.vanderbilt.edu</a>&gt; wrote:<br>
&gt;&gt; &gt;<br>&gt;&gt; &gt; Hi,<br>&gt;&gt; &gt;<br>&gt;&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Thanks for using the PRF.<br>&gt;&gt; &gt;<br>&gt;&gt; &gt; &gt;ACE VERSION: 5.5.8<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;HOST MACHINE and OPERATING SYSTEM:<br>
&gt;&gt; &gt; &gt;Windows XP Professional and Enterprise Linux 5.0<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Version 2002<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;COMPILER NAME AND VERSION (AND PATCHLEVEL):<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Visual studio 2005<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;THE $ACE_ROOT/ace/config.h FILE<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;#include &quot;ace/config-win32.h&quot;&nbsp;&nbsp; for windows<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;#include &quot;ace/config-linux.h&quot;&nbsp;&nbsp; for linux<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;DOES THE PROBLEM AFFECT:<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COMPILATION?&nbsp;&nbsp; NO<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LINKING?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NO<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EXECUTION?&nbsp;&nbsp;&nbsp;&nbsp; YES<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OTHER<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;SYNOPSIS:<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Use of ACE_RW_Process_Mutex.I developed a very simple program which<br>&gt;&gt; &gt; needs to<br>
&gt;&gt; &gt; &gt;be extended for Multiple readers and single writer ( shared memory<br>&gt;&gt; &gt; concept<br>&gt;&gt; &gt; &gt;using a Hash Map with allocator)<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Even a single Reader and single writer are not getting<br>
&gt;&gt; &gt; &gt;syncronized.Pleaseprovide with a sample program of<br>&gt;&gt; &gt; &gt;ACE_RW_Process_Mutex.<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;DESCRIPTION:<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;After having a look into ACE_ROOT/examples/Threads ,I implemented the<br>&gt;&gt; &gt; &gt;following code using ACE_RW_Process_Mutex. and run in both Windows and<br>&gt;&gt; &gt; &gt;linux5.0. But in both the cases the synchronization is not happening .<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Yes I have tried with ACE_Process_Mutex.Its working Fine in Windows<br>&gt;&gt; &gt; &gt;and linux.I m attaching the code of ACE_Process_Mutex along with its<br>&gt;&gt; &gt; &gt;output&nbsp;&nbsp;and also of ACE_RW_Process_Mutex along with its output<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;The Code is written as below&nbsp;&nbsp;(WITH ACE_RW_Process_Mutex)<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;int ACE_TMAIN (int argc, ACE_TCHAR *argv[])<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;{<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;int count =0;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;float ltime=0;<br>&gt;&gt; &gt;<br>&gt;&gt; &gt; BTW, I recommend you use<br>&gt;&gt; &gt;<br>&gt;&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp; ACE_RW_Process_Mutex m_RWMutex;<br>
&gt;&gt; &gt;<br>&gt;&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp; if (m_RWMutex.open (ACE_TEXT(&quot;MyMutex&quot;)) == -1)<br>&gt;&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_DEBUG ((LM_ERROR, &quot;%p\n&quot;, &quot;RWMutex::open&quot;));<br>&gt;&gt; &gt;<br>&gt;&gt; &gt; to make sure that the open isn&#39;t failing.<br>
&gt;&gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;ACE_RW_Process_Mutex m_RWMutex(ACE_TEXT(&quot;MyMutex&quot;));<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;if (agrc == 1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// For server which is writing<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (1)<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (m_RWMutex.acquire_write() == 0)<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ltime = ::GetTickCount();<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::printf(&quot;Writer acquired...%d&nbsp;&nbsp;at:<br>
&gt;&gt; &gt; &gt;%f\n&quot;,count++,ltime);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::sleep(2);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ltime = ::GetTickCount();<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::printf(&quot;Writer releasing... ...%d&nbsp;&nbsp;at:<br>&gt;&gt; &gt; &gt;%f\n&quot;,count++,ltime);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_RWMutex.release();<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//For Client which is reading<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (1)<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (m_RWMutex.acquire_read() == 0)<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ltime = ::GetTickCount();<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ACE_OS::printf(&quot;Reader acquired... ...%d&nbsp;&nbsp;at:<br>
&gt;&gt; &gt; &gt;%f\n&quot;,count++,ltime);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::sleep(2);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ltime = ::GetTickCount();<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACE_OS::printf(&quot;Reader releasing...%d&nbsp;&nbsp;at:<br>&gt;&gt; &gt; &gt;%f\n&quot;,count++,ltime);<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m_RWMutex.release();<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;}<br>
&gt;&gt; &gt;<br>&gt;&gt; &gt; I can&#39;t figure out what the difference is between the two outputs with<br>&gt;&gt; &gt; a cursory look.&nbsp;&nbsp;Can you please explain why you think the<br>&gt;&gt; &gt; RW_Process_Mutex isn&#39;t working whereas the Process_Mutex is working?<br>
&gt;&gt; &gt;<br>&gt;&gt; &gt; Thanks,<br>&gt;&gt; &gt;<br>&gt;&gt; &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Doug<br>&gt;&gt; &gt;<br>&gt;&gt; &gt; &gt;output is like this(WITH ACE_RW_Process_Mutex):<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Writer<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88110592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88112592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88112592<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp; at&nbsp;&nbsp; 88114592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88114592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88116592<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88116592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88118592<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;Reader<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88112872<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88114872<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88114872<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88116872<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88116872<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88118872<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88118872<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;output is like this (WITH ACE_Process_Mutex):<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Writer<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp;&nbsp;&nbsp;88560984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88562984<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88562984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp; at&nbsp;&nbsp; 88564984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88566984<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88568984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer acquired&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88570984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;writer released&nbsp;&nbsp;&nbsp;&nbsp;3&nbsp;&nbsp;&nbsp;&nbsp;at&nbsp;&nbsp; 88572984<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88564984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88566984<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88568984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88570984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88572984<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88574984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader acquired&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88576984<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;Reader released&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; at&nbsp;&nbsp; 88578984<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;On 3/3/08, Matthew Gillen &lt;<a href="mailto:mgillen@bbn.com">mgillen@bbn.com</a>&gt; wrote:<br>&gt;&gt; &gt; &gt;&gt;<br>
&gt;&gt; &gt; &gt;&gt; kul gupta wrote:<br>&gt;&gt; &gt; &gt;&gt; &gt; After having a look into ACE_ROOT/examples/Threads ,I implemented<br>&gt;&gt; &gt; the<br>&gt;&gt; &gt; &gt;&gt; &gt; following code using ACE_RW_Process_Mutex. and run in both Windows<br>
&gt;&gt; &gt; and<br>&gt;&gt; &gt; &gt;&gt; &gt; linux5.0. But in both the cases the synchronization is not<br>&gt;&gt; &gt; happening .<br>&gt;&gt; &gt; &gt;&gt;<br>&gt;&gt; &gt; &gt;&gt; It would help if were more specific about what actually /is/<br>
&gt;&gt; &gt; &gt;&gt; happening.&nbsp;&nbsp;Do<br>&gt;&gt; &gt; &gt;&gt; you see the output messages in the wrong order?&nbsp;&nbsp;Do you never see<br>&gt;&gt; &gt; some<br>&gt;&gt; &gt; &gt;&gt; output messages?<br>&gt;&gt; &gt; &gt;&gt;<br>
&gt;&gt; &gt; &gt;&gt; Matt<br>&gt;&gt; &gt; &gt;&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;------=_Part_37_22204605.1204610511961<br>&gt;&gt; &gt; &gt;Content-Type: text/html; charset=ISO-8859-1<br>&gt;&gt; &gt; &gt;Content-Transfer-Encoding: 7bit<br>
&gt;&gt; &gt; &gt;Content-Disposition: inline<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY:<br>
&gt;&gt; &gt; Arial&quot;&gt;Subject: &lt;/span&gt;&lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY:<br>&gt;&gt; &gt; &amp;#39;Courier New&amp;#39;&quot;&gt;ACE_RW_Process_Mutex in single writer and multiple<br>&gt;&gt; &gt; readers&lt;/span&gt;&lt;span style=&quot;FONT-SIZE: 9.5pt; FONT-FAMILY:<br>
&gt;&gt; &gt; Arial&quot;&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-FAMILY: Arial&quot;&gt;ACE VERSION&lt;/span&gt;: 5.5.8&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;<br>
&gt;&gt; &gt; &gt;&lt;div&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-FAMILY: Arial&quot;&gt;HOST MACHINE and OPERATING<br>&gt;&gt; &gt; SYSTEM&lt;/span&gt;:&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;<br>
&gt;&gt; &gt; &gt;&lt;div&gt;&lt;font face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;Windows XP<br>&gt;&gt; &gt; Professional and Enterprise Linux 5.0&lt;/font&gt;&lt;/div&gt;&lt;pre&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;Version 2002&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font<br>
&gt;&gt; &gt; face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;TARGET MACHINE and OPERATING SYSTEM,<br>&gt;&gt; &gt; if different from HOST:NO&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-FAMILY: Arial&quot;&gt;COMPILER NAME AND VERSION&lt;/span&gt; (AND<br>&gt;&gt; &gt; PATCHLEVEL):&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;Visual studio 2005&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&quot;&gt;THE<br>&gt;&gt; &gt; $ACE_ROOT/ace/config.h FILE &lt;/span&gt;&lt;span style=&quot;FONT-SIZE: 9.5pt;<br>&gt;&gt; &gt; FONT-FAMILY: Arial&quot;&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;#include &amp;quot;ace/config-win32.h&amp;quot;&amp;nbsp;&amp;nbsp; for<br>&gt;&gt; &gt; windows&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;#include &amp;quot;ace/config-linux.h&amp;quot;&amp;nbsp;&amp;nbsp; for<br>
&gt;&gt; &gt; linux&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-FAMILY: Arial&quot;&gt;DOES THE PROBLEM<br>
&gt;&gt; &gt; AFFECT&lt;/span&gt;:&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COMPILATION? &amp;nbsp;<br>
&gt;&gt; &gt; NO&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LINKING?&amp;nbsp;<br>
&gt;&gt; &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; EXECUTION?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YES&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OTHER<br>
&gt;&gt; &gt; &amp;nbsp;&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;span style=&quot;FONT-FAMILY: Arial&quot;&gt;SYNOPSIS&lt;/span&gt;:&lt;/font&gt;&lt;/pre&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;Use of ACE_RW_Process_Mutex.I developed a very simple program which<br>&gt;&gt; &gt; needs to be extended for Multiple readers and single writer ( shared memory<br>&gt;&gt; &gt; concept using a Hash Map with allocator)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;Even a single Reader and single writer are not getting<br>&gt;&gt; &gt; syncronized.Please provide with a sample program of<br>&gt;&gt; &gt; ACE_RW_Process_Mutex.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt; FONT-FAMILY:<br>
&gt;&gt; &gt; Arial&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;FONT-SIZE: 9.5pt; FONT-FAMILY:<br>&gt;&gt; &gt; Arial&quot;&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;pre&gt;<br>&gt;&gt; &gt; &gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-FAMILY: Arial&quot;&gt;DESCRIPTION&lt;/span&gt;:&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;After having a look into<br>
&gt;&gt; &gt; ACE_ROOT/examples/Threads ,I implemented the following code using<br>&gt;&gt; &gt; ACE_RW_Process_Mutex. and run in both Windows and linux5.0. But in both<br>&gt;&gt; &gt; the cases the synchronization is not happening .&lt;/font&gt;&lt;/pre&gt;<br>
&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;Yes I have tried with<br>&gt;&gt; &gt; ACE_Process_Mutex.Its working Fine in Windows and linux.I m attaching<br>&gt;&gt; &gt; the code of ACE_Process_Mutex along with its output&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;and also of ACE_RW_Process_Mutex<br>&gt;&gt; &gt; along with its output&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;The Code is written as<br>
&gt;&gt; &gt; below&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;(WITH<br>&gt;&gt; &gt; ACE_RW_Process_Mutex)&lt;/font&gt;&lt;/pre&gt;&lt;pre&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;int ACE_TMAIN (int argc, ACE_TCHAR<br>
&gt;&gt; &gt; *argv[])&lt;/font&gt;&lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;int count =0;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;float ltime=0;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_RW_Process_Mutex<br>&gt;&gt; &gt; m_RWMutex(ACE_TEXT(&amp;quot;MyMutex&amp;quot;));&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (agrc == 1)&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 3&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; &lt;/span&gt;// For server which is writing&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while<br>&gt;&gt; &gt; (1)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if<br>&gt;&gt; &gt; (m_RWMutex.acquire_write() == 0)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 2&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; &lt;/span&gt;&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ltime =<br>&gt;&gt; &gt; ::GetTickCount();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; ACE_OS::printf(&amp;quot;Writer acquired...%d&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp; &lt;/span&gt;at: %f\n&amp;quot;,count++,ltime);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; ACE_OS::sleep(2);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 2&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ltime =<br>
&gt;&gt; &gt; ::GetTickCount();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; ACE_OS::printf(&amp;quot;Writer releasing... ...%d&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp; &lt;/span&gt;at: %f\n&amp;quot;,count++,ltime);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; m_RWMutex.release();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 4&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; &lt;/span&gt;//For Client which is reading &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while<br>&gt;&gt; &gt; (1)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if<br>&gt;&gt; &gt; (m_RWMutex.acquire_read() == 0)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; {&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ltime<br>
&gt;&gt; &gt; = ::GetTickCount(); &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 2&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; &lt;/span&gt;ACE_OS::printf(&amp;quot;Reader acquired... ...%d&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;at:<br>&gt;&gt; &gt; %f\n&amp;quot;,count++,ltime);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; ACE_OS::sleep(2);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 2&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;ltime =<br>
&gt;&gt; &gt; ::GetTickCount();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; ACE_OS::printf(&amp;quot;Reader releasing...%d&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp; &lt;/span&gt;at: %f\n&amp;quot;,count++,ltime);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; m_RWMutex.release();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;<br>
&gt;&gt; &gt; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>
&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt;<br>&gt;&gt; &gt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;&gt;&lt;font<br>
&gt;&gt; &gt; size=&quot;1&quot;&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot;<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;output is like this(WITH ACE_RW_Process_Mutex):&lt;/font&gt;&lt;/pre&gt;<br>
&gt;&gt; &gt; &gt;&lt;pre&gt;&lt;font face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;Writer &lt;/font&gt;&lt;/pre&gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88110592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88112592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88112592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88114592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88114592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88116592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88116592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released &lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;3 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88118592&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>
&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;Reader&lt;/font&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88112872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88114872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88114872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88116872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88116872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88118872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88118872&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>
&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;output is like this (WITH<br>&gt;&gt; &gt; ACE_Process_Mutex):&lt;/font&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;Writer &lt;/font&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88560984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88562984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88562984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88564984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;<br>&gt;&gt; &gt; &lt;/span&gt;88566984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp; &lt;/span&gt;at &lt;span style=&quot;mso-spacerun:<br>&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;88568984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88570984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;writer released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3 &lt;span<br>&gt;&gt; &gt; style=&quot;mso-tab-count: 1&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88572984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>
&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;Reader&lt;/font&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88564984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;0&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88566984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88568984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;1&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88570984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88572984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader released&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;2&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88574984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot;&gt;&lt;font size=&quot;1&quot;&gt;Reader acquired&lt;span<br>
&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3&lt;span style=&quot;mso-tab-count:<br>&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>
&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88576984&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span<br>
&gt;&gt; &gt; style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;#39;Courier New&amp;#39;&quot;&gt;&lt;font<br>&gt;&gt; &gt; face=&quot;courier new,monospace&quot; size=&quot;1&quot;&gt;Reader released&lt;span<br>&gt;&gt; &gt; style=&quot;mso-spacerun: yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;3&lt;span style=&quot;mso-tab-count:<br>
&gt;&gt; &gt; 1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;at&lt;span style=&quot;mso-spacerun:<br>&gt;&gt; &gt; yes&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;88578984&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;&lt;p class=&quot;MsoNormal&quot; style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;br&gt;&lt;br&gt;<br>
&gt;&gt; &gt; &gt;&lt;div&gt;&lt;span class=&quot;gmail_quote&quot;&gt;&lt;font face=&quot;courier new,monospace&quot;<br>&gt;&gt; &gt; size=&quot;1&quot;&gt;On 3/3/08, &lt;b class=&quot;gmail_sendername&quot;&gt;Matthew Gillen&lt;/b&gt; &amp;lt;&lt;a<br>
&gt;&gt; &gt; href=&quot;mailto:<a href="mailto:mgillen@bbn.com">mgillen@bbn.com</a>&quot;&gt;<a href="mailto:mgillen@bbn.com">mgillen@bbn.com</a>&lt;/a&gt;&amp;gt;<br>&gt;&gt; &gt; wrote:&lt;/font&gt;&lt;/span&gt;<br>&gt;&gt; &gt; &gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px<br>
&gt;&gt; &gt; 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;&lt;font face=&quot;courier<br>&gt;&gt; &gt; new,monospace&quot; size=&quot;1&quot;&gt;kul gupta wrote:&lt;br&gt;&amp;gt; After having a look into<br>&gt;&gt; &gt; ACE_ROOT/examples/Threads ,I implemented the&lt;br&gt;<br>
&gt;&gt; &gt; &gt;&amp;gt; following code using ACE_RW_Process_Mutex. and run in both Windows<br>&gt;&gt; &gt; and&lt;br&gt;&amp;gt; linux5.0. But in both the cases the synchronization is not<br>&gt;&gt; &gt; happening .&lt;br&gt;&lt;br&gt;It would help if were more specific about what actually<br>
&gt;&gt; &gt; /is/ happening.&amp;nbsp;&amp;nbsp;Do&lt;br&gt;<br>&gt;&gt; &gt; &gt;you see the output messages in the wrong order?&amp;nbsp;&amp;nbsp;Do you never<br>&gt;&gt; &gt; see some&lt;br&gt;output messages?&lt;br&gt;&lt;br&gt;Matt&lt;br&gt;&lt;/font&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;<br>
&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt; &gt;------=_Part_37_22204605.1204610511961--<br>&gt;&gt; &gt; &gt;<br>&gt;&gt; &gt;<br>&gt;&gt; &gt;<br>&gt;&gt; &gt; --<br>&gt;&gt; &gt; Dr. Douglas C. Schmidt&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Professor and Associate<br>
&gt;&gt; &gt; Chair<br>&gt;&gt; &gt; Electrical Engineering and Computer Science&nbsp;&nbsp;TEL: (615) 343-8197<br>&gt;&gt; &gt; Vanderbilt University&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WEB:<br>&gt;&gt; &gt; <a href="http://www.dre.vanderbilt.edu/~schmidt">www.dre.vanderbilt.edu/~schmidt</a><br>
&gt;&gt; &gt; Nashville, TN 37203&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NET:<br>&gt;&gt; &gt; <a href="mailto:d.schmidt@vanderbilt.edu">d.schmidt@vanderbilt.edu</a><br>&gt;&gt; &gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;<br>&gt;------=_Part_7130_8139674.1205128337979<br>
&gt;Content-Type: text/html; charset=ISO-8859-1<br>&gt;Content-Transfer-Encoding: 7bit<br>&gt;Content-Disposition: inline<br>&gt;<br>&gt;&lt;div&gt;<br>&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;<br>
&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div&gt;&lt;font color=&quot;#550055&quot; size=&quot;1&quot;&gt;&lt;/font&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div&gt;&lt;font color=&quot;#550055&quot; size=&quot;1&quot;&gt;ACE VERSION: 5.5.8&lt;br&gt;&lt;br&gt;HOST MACHINE and OPERATING SYSTEM:&lt;br&gt;Windows XP Professional and Enterprise Linux 5.0&lt;br&gt;&lt;br&gt;Version 2002&lt;br&gt;&lt;br&gt;TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO&lt;br&gt;<br>
&gt;&lt;br&gt;COMPILER NAME AND VERSION (AND PATCHLEVEL):&lt;br&gt;&lt;br&gt;Visual studio 2005&lt;br&gt;&lt;br&gt;THE $ACE_ROOT/ace/config.h FILE&lt;br&gt;&lt;br&gt;#include &amp;quot;ace/config-win32.h&amp;quot; &amp;nbsp; for windows&lt;br&gt;&lt;br&gt;#include &amp;quot;ace/config-linux.h&amp;quot; &amp;nbsp; for linux&lt;br&gt;<br>
&gt;&lt;br&gt;DOES THE PROBLEM AFFECT:&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COMPILATION? &amp;nbsp; NO&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;LINKING? &amp;nbsp; &amp;nbsp; &amp;nbsp; NO&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;EXECUTION? &amp;nbsp; &amp;nbsp; YES&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OTHER&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;SYNOPSIS:&lt;br&gt;Adding a sleep(0) after the statement of&amp;nbsp;releasing mutex ,single writer and reader is in sync.&lt;/font&gt;&lt;/div&gt;<br>
&gt;&lt;/blockquote&gt;<br>&gt;&lt;div&gt;can u pl;ease let me know how to use the the ACE_RW_Process_mutex for multiple readers.??&lt;/div&gt;&lt;br&gt;<br>&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;<br>
&gt;&lt;div&gt;&lt;span style=&quot;FONT-SIZE: 10pt&quot;&gt;&lt;font size=&quot;1&quot;&gt;&lt;/font&gt;&lt;/span&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div style=&quot;DIRECTION: ltr&quot;&gt;<br>&gt;&lt;p style=&quot;MARGIN: 0in 0in 0pt&quot;&gt;&lt;span style=&quot;FONT-SIZE: 10pt&quot;&gt;&lt;font size=&quot;1&quot;&gt;DESCRIPTION.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;<br>
&gt;&lt;div&gt;&lt;span&gt;I am writing the code below.&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;<br>&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div&gt;I want to implement the same for multiple readers.can u please hint me about the same or if there is any sample of using ACE_RW_Process_mutex.&lt;/div&gt;&lt;br&gt;<br>
&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;<br>&gt;&lt;div&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;int ACE_TMAIN (int argc, ACE_TCHAR *argv[])&lt;br&gt;&lt;br&gt;&lt;br&gt;{&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;int count =0;&lt;br&gt;&lt;br&gt;float ltime=0;&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font style=&quot;BACKGROUND-COLOR: #33ccff&quot;&gt;ACE_RW_Process_Mutex&lt;/font&gt; m_RWMutex(ACE_TEXT(&amp;quot;MyMutex&amp;quot;));&lt;br&gt;<br>
&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (agrc == 1)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // For server which is writing&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (1)&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (m_RWMutex.acquire_write() == 0)&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ltime = ::GetTickCount();&amp;nbsp; //number of millisec since the system has started&lt;span&gt;&lt;/span&gt; &lt;/font&gt;&lt;span&gt;&lt;br&gt;&lt;br&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::printf(&amp;quot;Writer acquired...%d&amp;nbsp; at: %f\n&amp;quot;,count++,ltime);&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::sleep(2);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ltime = ::GetTickCount();&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::printf(&amp;quot;Writer releasing... ...%d&amp;nbsp; at: %f\n&amp;quot;,count++,ltime);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_RWMutex.release();&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;<br>
&gt;&lt;/blockquote&gt;<br>&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;ACE_OS::sleep(0);&lt;/font&gt;&lt;br&gt;&amp;nbsp;&lt;/div&gt;&lt;br&gt;<br>&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;<br>
&gt;&lt;div&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //For Client which is reading &lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (1)&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (m_RWMutex.acquire_read() == 0)&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ltime = ::GetTickCount(); &lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; ACE_OS::printf(&amp;quot;Reader acquired... ...%d&amp;nbsp; at: %f\n&amp;quot;,count++,ltime);&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::sleep(2);&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; ltime = ::GetTickCount();&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::printf(&amp;quot;Reader releasing...%d&amp;nbsp; at: %f\n&amp;quot;,count++,ltime);&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; m_RWMutex.release();&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;<br>
&gt;&lt;/blockquote&gt;<br>&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;<br>&gt;&lt;div&gt;&lt;font size=&quot;1&quot;&gt;ACE_OS::sleep(0);&lt;/font&gt;&lt;/div&gt;&lt;br&gt;<br>&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;<br>
&gt;&lt;div&gt;&lt;font size=&quot;1&quot;&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 0;&lt;br&gt;&lt;br&gt;}&lt;/span&gt; &lt;/font&gt;&lt;/div&gt;<br>
&gt;&lt;div&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&lt;/font&gt;&lt;/div&gt;<br>&gt;&lt;div&gt;&lt;font size=&quot;1&quot;&gt;OUTPUT&amp;nbsp;&amp;nbsp;is like this(WITH ACE_RW_Process_Mutex):&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;br&gt;Writer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimeStamp(in millisec)&amp;nbsp;&lt;/font&gt;&lt;span&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;font size=&quot;1&quot;&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88110592&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br&gt;<br>
&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88112592&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;font size=&quot;1&quot;&gt;&lt;font style=&quot;BACKGROUND-COLOR: #ffff00&quot;&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp; &amp;nbsp; at&amp;nbsp;&amp;nbsp; 88112592&lt;br&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114592&lt;br&gt;&lt;/font&gt;&lt;br&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp; &amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114592&lt;br&gt;<br>
&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp; &amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116592&lt;br&gt;&lt;br&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116592&lt;br&gt;&lt;br&gt;writer released &amp;nbsp;&amp;nbsp;&amp;nbsp;3 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88118592&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;Reader&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;font size=&quot;1&quot;&gt;&lt;font style=&quot;BACKGROUND-COLOR: #33ff33&quot;&gt;Reader acquired&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88112872&lt;br&gt;<br>
&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114872&lt;br&gt;&lt;/font&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114872&lt;br&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116872&lt;br&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116872&lt;span&gt;&lt;/span&gt; &lt;br&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88118872&lt;br&gt;<br>
&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88118872&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size=&quot;1&quot;&gt;OUTPUT is like this (WITH ACE_Process_Mutex):&lt;br&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;Writer&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TimeStamp(in millisec)&lt;/font&gt;&lt;span&gt;&lt;br&gt;<br>
&gt;&lt;br&gt;&lt;font size=&quot;1&quot;&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;font size=&quot;1&quot;&gt;&lt;font style=&quot;BACKGROUND-COLOR: #ffff00&quot;&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp;&amp;nbsp; 88560984&lt;br&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88562984&lt;br&gt;&lt;br&gt;&lt;/font&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp; &amp;nbsp; at&amp;nbsp;&amp;nbsp; 88562984&lt;br&gt;<br>
&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88564984&lt;br&gt;&lt;br&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp; &amp;nbsp; at&amp;nbsp;&amp;nbsp; 88566984&lt;br&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp; &amp;nbsp; at &amp;nbsp;&amp;nbsp;88568984&lt;br&gt;&lt;br&gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88570984&lt;br&gt;&lt;br&gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp; 3 &amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88572984&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;Reader&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;font size=&quot;1&quot;&gt;&lt;font style=&quot;BACKGROUND-COLOR: #33ff33&quot;&gt;Reader acquired&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88564984&lt;br&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88566984&lt;br&gt;&lt;/font&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88568984&lt;br&gt;<br>
&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88570984&lt;br&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88572984&lt;br&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88574984&lt;br&gt;&lt;br&gt;Reader acquired&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88576984&lt;br&gt;&lt;br&gt;Reader released&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88578984&lt;br&gt;<br>
&gt;&lt;br&gt;&amp;nbsp;&lt;br&gt;&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;font size=&quot;1&quot;&gt;Thanks&lt;br&gt;&lt;/font&gt;&lt;span&gt;&lt;br&gt;&lt;font size=&quot;1&quot;&gt;Kul&lt;/font&gt;&lt;/span&gt;&lt;span&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;<br>
&gt;&lt;div&gt;&lt;span class=&quot;gmail_quote&quot;&gt;&lt;font size=&quot;1&quot;&gt;On 3/4/08, &lt;b class=&quot;gmail_sendername&quot;&gt;Douglas C. Schmidt&lt;/b&gt; &amp;lt;&lt;a onclick=&quot;return top.js.OpenExtLink(window,event,this)&quot; href=&quot;mailto:<a href="mailto:schmidt@dre.vanderbilt.edu">schmidt@dre.vanderbilt.edu</a>&quot; target=&quot;_blank&quot;&gt;<a href="mailto:schmidt@dre.vanderbilt.edu">schmidt@dre.vanderbilt.edu</a>&lt;/a&gt;&amp;gt; wrote:&lt;/font&gt;&lt;/span&gt;<br>
&gt;&lt;blockquote class=&quot;gmail_quote&quot; style=&quot;PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid&quot;&gt;&lt;font size=&quot;1&quot;&gt;Hi,&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks for using the PRF.&lt;br&gt;&lt;br&gt;&amp;gt;ACE VERSION: 5.5.8&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;HOST MACHINE and OPERATING SYSTEM:&lt;br&gt;<br>
&gt;&amp;gt;Windows XP Professional and Enterprise Linux 5.0&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Version 2002&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;COMPILER NAME AND VERSION (AND PATCHLEVEL):&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;Visual studio 2005&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;THE $ACE_ROOT/ace/config.h FILE&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;#include &amp;quot;ace/config-win32.h&amp;quot;&amp;nbsp;&amp;nbsp; for windows&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;#include &amp;quot;ace/config-linux.h&amp;quot;&amp;nbsp;&amp;nbsp; for linux&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;DOES THE PROBLEM AFFECT:&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;COMPILATION?&amp;nbsp;&amp;nbsp; NO&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;LINKING?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NO&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;EXECUTION?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; YES&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OTHER&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SYNOPSIS:&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;Use of ACE_RW_Process_Mutex.I developed a very simple program which needs to&lt;br&gt;&amp;gt;be extended for Multiple readers and single writer ( shared memory concept&lt;br&gt;&amp;gt;using a Hash Map with allocator)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Even a single Reader and single writer are not getting&lt;br&gt;<br>
&gt;&amp;gt;syncronized.Pleaseprovide with a sample program of&lt;br&gt;&amp;gt;ACE_RW_Process_Mutex.&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;DESCRIPTION:&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;After having a look into ACE_ROOT/examples/Threads ,I implemented the&lt;br&gt;&amp;gt;following code using ACE_RW_Process_Mutex. and run in both Windows and&lt;br&gt;<br>
&gt;&amp;gt;linux5.0. But in both the cases the synchronization is not happening .&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Yes I have tried with ACE_Process_Mutex.Its working Fine in Windows&lt;br&gt;&amp;gt;and linux.I m attaching the code of ACE_Process_Mutex along with its&lt;br&gt;<br>
&gt;&amp;gt;output&amp;nbsp;&amp;nbsp;and also of ACE_RW_Process_Mutex along with its output&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;The Code is written as below&amp;nbsp;&amp;nbsp;(WITH ACE_RW_Process_Mutex)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;int ACE_TMAIN (int argc, ACE_TCHAR *argv[])&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;{&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;int count =0;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;float ltime=0;&lt;br&gt;&lt;br&gt;BTW, I recommend you use&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_RW_Process_Mutex m_RWMutex;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (m_RWMutex.open (ACE_TEXT(&amp;quot;MyMutex&amp;quot;)) == -1)&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_DEBUG ((LM_ERROR, &amp;quot;%p\n&amp;quot;, &amp;quot;RWMutex::open&amp;quot;));&lt;br&gt;<br>
&gt;&lt;br&gt;to make sure that the open isn&amp;#39;t failing.&lt;br&gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_RW_Process_Mutex m_RWMutex(ACE_TEXT(&amp;quot;MyMutex&amp;quot;));&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (agrc == 1)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// For server which is writing&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while (1)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (m_RWMutex.acquire_write() == 0)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ltime = ::GetTickCount();&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_OS::printf(&amp;quot;Writer acquired...%d&amp;nbsp;&amp;nbsp;at:&lt;br&gt;&amp;gt;%f\n&amp;quot;,count++,ltime);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_OS::sleep(2);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ltime = ::GetTickCount();&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_OS::printf(&amp;quot;Writer releasing... ...%d&amp;nbsp;&amp;nbsp;at:&lt;br&gt;<br>
&gt;&amp;gt;%f\n&amp;quot;,count++,ltime);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;m_RWMutex.release();&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//For Client which is reading&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;while (1)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (m_RWMutex.acquire_read() == 0)&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ltime = ::GetTickCount();&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ACE_OS::printf(&amp;quot;Reader acquired... ...%d&amp;nbsp;&amp;nbsp;at:&lt;br&gt;&amp;gt;%f\n&amp;quot;,count++,ltime);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_OS::sleep(2);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ltime = ::GetTickCount();&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ACE_OS::printf(&amp;quot;Reader releasing...%d&amp;nbsp;&amp;nbsp;at:&lt;br&gt;&amp;gt;%f\n&amp;quot;,count++,ltime);&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;m_RWMutex.release();&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return 0;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;}&lt;br&gt;&lt;br&gt;I can&amp;#39;t figure out what the difference is between the two outputs with&lt;br&gt;a cursory look.&amp;nbsp;&amp;nbsp;Can you please explain why you think the&lt;br&gt;RW_Process_Mutex isn&amp;#39;t working whereas the Process_Mutex is working?&lt;br&gt;<br>
&gt;&lt;br&gt;Thanks,&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Doug&lt;br&gt;&lt;br&gt;&amp;gt;output is like this(WITH ACE_RW_Process_Mutex):&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Writer&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88110592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88112592&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88112592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88114592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88116592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88116592&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88118592&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88112872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88114872&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88116872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88118872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88118872&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;output is like this (WITH ACE_Process_Mutex):&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Writer&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;88560984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88562984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88562984&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88564984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88566984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88568984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer acquired&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88570984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;writer released&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at&amp;nbsp;&amp;nbsp; 88572984&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88564984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 0&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88566984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88568984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88570984&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88572984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88574984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader acquired&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88576984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;Reader released&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; at&amp;nbsp;&amp;nbsp; 88578984&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;On 3/3/08, Matthew Gillen &amp;lt;&lt;a onclick=&quot;return top.js.OpenExtLink(window,event,this)&quot; href=&quot;mailto:<a href="mailto:mgillen@bbn.com">mgillen@bbn.com</a>&quot; target=&quot;_blank&quot;&gt;<a href="mailto:mgillen@bbn.com">mgillen@bbn.com</a>&lt;/a&gt;&amp;gt; wrote:&lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt; kul gupta wrote:&lt;br&gt;<br>
&gt;&amp;gt;&amp;gt; &amp;gt; After having a look into ACE_ROOT/examples/Threads ,I implemented the&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; following code using ACE_RW_Process_Mutex. and run in both Windows and&lt;br&gt;&amp;gt;&amp;gt; &amp;gt; linux5.0. But in both the cases the synchronization is not happening .&lt;br&gt;<br>
&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt; It would help if were more specific about what actually /is/&lt;br&gt;&amp;gt;&amp;gt; happening.&amp;nbsp;&amp;nbsp;Do&lt;br&gt;&amp;gt;&amp;gt; you see the output messages in the wrong order?&amp;nbsp;&amp;nbsp;Do you never see some&lt;br&gt;&amp;gt;&amp;gt; output messages?&lt;br&gt;<br>
&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;gt; Matt&lt;br&gt;&amp;gt;&amp;gt;&lt;br&gt;&amp;gt;&lt;br&gt;&amp;gt;------=_Part_37_22204605.1204610511961&lt;br&gt;&amp;gt;Content-Type: text/html; charset=ISO-8859-1&lt;br&gt;&amp;gt;Content-Transfer-Encoding: 7bit&lt;br&gt;&amp;gt;Content-Disposition: inline&lt;br&gt;&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;Subject: &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;ACE_RW_Process_Mutex in single writer and multiple readers&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 9.5pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;ACE VERSION&amp;lt;/span&amp;gt;: 5.5.8&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;div&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;HOST MACHINE and OPERATING SYSTEM&amp;lt;/span&amp;gt;:&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;div&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Windows XP Professional and Enterprise Linux 5.0&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Version 2002&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;TARGET MACHINE and OPERATING SYSTEM, if different from HOST:NO&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;COMPILER NAME AND VERSION&amp;lt;/span&amp;gt; (AND PATCHLEVEL):&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Visual studio 2005&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;THE $ACE_ROOT/ace/config.h FILE &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 9.5pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;#include &amp;amp;quot;ace/config-win32.h&amp;amp;quot;&amp;amp;nbsp;&amp;amp;nbsp; for windows&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;#include &amp;amp;quot;ace/config-linux.h&amp;amp;quot;&amp;amp;nbsp;&amp;amp;nbsp; for linux&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;DOES THE PROBLEM AFFECT&amp;lt;/span&amp;gt;:&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; COMPILATION? &amp;amp;nbsp; NO&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; LINKING?&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; NO&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; EXECUTION?&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; YES&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; OTHER &amp;amp;nbsp;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;SYNOPSIS&amp;lt;/span&amp;gt;:&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Use of ACE_RW_Process_Mutex.I developed a very simple program which needs to be extended for Multiple readers and single writer ( shared memory concept using a Hash Map with allocator)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Even a single Reader and single writer are not getting syncronized.Please provide with a sample program of ACE_RW_Process_Mutex.&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 9.5pt; FONT-FAMILY: Arial&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-FAMILY: Arial&amp;quot;&amp;gt;DESCRIPTION&amp;lt;/span&amp;gt;:&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;After having a look into ACE_ROOT/examples/Threads ,I implemented the following code using ACE_RW_Process_Mutex. and run in both Windows and linux5.0. But in both the cases the synchronization is not happening .&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Yes I have tried with ACE_Process_Mutex.Its working Fine in Windows and linux.I m attaching the code of ACE_Process_Mutex along with its output&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;and also of ACE_RW_Process_Mutex along with its output&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;The Code is written as below&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;(WITH ACE_RW_Process_Mutex)&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;int ACE_TMAIN (int argc, ACE_TCHAR *argv[])&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;{&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;int count =0;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;float ltime=0;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_RW_Process_Mutex m_RWMutex(ACE_TEXT(&amp;amp;quot;MyMutex&amp;amp;quot;));&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; if (agrc == 1)&amp;lt;span style=&amp;quot;mso-tab-count: 3&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;// For server which is writing&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; while (1)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; if (m_RWMutex.acquire_write() == 0)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 2&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;ltime = ::GetTickCount();&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_OS::printf(&amp;amp;quot;Writer acquired...%d&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at: %f\n&amp;amp;quot;,count++,ltime);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_OS::sleep(2);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 2&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;ltime = ::GetTickCount();&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_OS::printf(&amp;amp;quot;Writer releasing... ...%d&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at: %f\n&amp;amp;quot;,count++,ltime);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; m_RWMutex.release();&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; else&amp;lt;span style=&amp;quot;mso-tab-count: 4&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;//For Client which is reading &amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; while (1)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; if (m_RWMutex.acquire_read() == 0)&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; {&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;ltime = ::GetTickCount(); &amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 2&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;ACE_OS::printf(&amp;amp;quot;Reader acquired... ...%d&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at: %f\n&amp;amp;quot;,count++,ltime);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_OS::sleep(2);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 2&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;ltime = ::GetTickCount();&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ACE_OS::printf(&amp;amp;quot;Reader releasing...%d&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at: %f\n&amp;amp;quot;,count++,ltime);&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; m_RWMutex.release();&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; }&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; return 0;&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;output is like this(WITH ACE_RW_Process_Mutex):&amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;pre&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Writer &amp;lt;/font&amp;gt;&amp;lt;/pre&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88110592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88112592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88112592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88114592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88114592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88116592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;3 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88116592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released &amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;3 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88118592&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Reader&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88112872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88114872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88114872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88116872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88116872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88118872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;Reader acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;3&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88118872&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;output is like this (WITH ACE_Process_Mutex):&amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;Writer &amp;lt;/font&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88560984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;0 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88562984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88562984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;1&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88564984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88566984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;2&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at &amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;88568984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer acquired&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;3 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88570984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;FONT-SIZE: 10pt; FONT-FAMILY: &amp;amp;#39;Courier New&amp;amp;#39;&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;courier new,monospace&amp;quot;&amp;gt;&amp;lt;font size=&amp;quot;1&amp;quot;&amp;gt;writer released&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;3 &amp;lt;span style=&amp;quot;mso-tab-count: 1&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;at&amp;lt;span style=&amp;quot;mso-spacerun: yes&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;/span&amp;gt;88572984&amp;lt;/font&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/p&amp;gt;&lt;br&gt;<br>
&gt;&amp;gt;&lt;br&gt;&amp;gt;&amp;lt;p class=&amp;quot;MsoNormal&amp;quot; style=&amp;quot;MARGIN: 0in 0in 0pt&amp;quot;&amp;gt;&amp;lt;font face=&amp;quot;c...<br><br>[Message clipped]&nbsp;&nbsp;</font></blockquote></div><br>