<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:宋体;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"\@宋体";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:新宋体;
        panose-1:2 1 6 9 3 1 1 1 1 1;}
@font-face
        {font-family:"\@新宋体";
        panose-1:2 1 6 9 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
/* Page Definitions */
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=ZH-CN link=blue vlink=purple style='text-justify-trim:punctuation'>
<div class=WordSection1>
<p class=MsoNormal><span lang=EN-US>Hi everyone,<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal><span lang=EN-US>I was blocked when calling </span><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;color:#2B91AF;background:
white;mso-highlight:white'>QueueingBasicConsumer</span><span lang=EN-US
style='font-size:9.0pt;font-family:新宋体;color:#2B91AF'>.</span><span lang=EN-US
style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:white'>Queue.Dequeue(</span><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体'>)</span><span lang=EN-US>,
but after several minutes the queue works well and messages can be dequeued.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US>I run deep into the source code and got
that </span><span lang=EN-US style='font-size:9.0pt;font-family:新宋体;color:#2B91AF;
background:white;mso-highlight:white'>Monitor</span><span lang=EN-US
style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:white'>.Wait(m_queue)</span><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体'> </span><span lang=EN-US>was
blocked.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal><span lang=EN-US>Also I got an </span><span lang=EN-US
style='font-size:10.0pt;font-family:宋体;color:black'>System.Threading.ThreadAbortException
triggered </span><span lang=EN-US>by </span><span lang=EN-US style='font-size:
10.0pt;font-family:宋体;color:black'>System.Threading.Monitor.ObjWait(Boolean
exitContext, Int32 millisecondsTimeout, Object obj)</span><span lang=EN-US><o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal><span lang=EN-US>Below is my code written by C#, the version
of RabbitMQ.Client.dll is 1.8.1.0.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-indent:36.0pt;
text-autospace:none'><span lang=EN-US style='font-size:9.0pt;font-family:新宋体;
color:blue;background:white;mso-highlight:white'>public</span><span lang=EN-US
style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:white'> <span
style='color:blue'>static</span> <span style='color:blue'>void</span>
Send<T>(T data, <span style='color:blue'>string</span> serverAddress, <span
style='color:blue'>string</span> exchange, <span style='color:blue'>string</span>
queuename, <span style='color:blue'>string</span> routingKey)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> <span
style='color:blue'>byte</span>[] message = SerializeToByteArray(data);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> <span
style='color:blue'>try<o:p></o:p></span></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>ConnectionFactory</span> cf = <span
style='color:blue'>new</span> <span style='color:#2B91AF'>ConnectionFactory</span>();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
cf.Address = serverAddress;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>using</span> (<span style='color:#2B91AF'>IConnection</span>
conn = cf.CreateConnection())<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>using</span> (<span style='color:#2B91AF'>IModel</span>
ch = conn.CreateModel())<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
conn.AutoClose = <span style='color:blue'>true</span>;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.ExchangeDeclare(exchange, <span style='color:#2B91AF'>ExchangeType</span>.Direct);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.QueueDeclare(queuename);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> ch.QueueBind(queuename,
exchange, routingKey, <span style='color:blue'>false</span>, <span
style='color:blue'>null</span>);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>IBytesMessageBuilder</span> ibm = <span
style='color:blue'>new</span> <span style='color:#2B91AF'>BytesMessageBuilder</span>(ch);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ibm.WriteBytes(message);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.BasicPublish(exchange, routingKey, (<span style='color:#2B91AF'>IBasicProperties</span>)ibm.GetContentHeader(),
ibm.GetContentBody());<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>if</span> (ch.IsOpen)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.Close();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>if</span> (conn.IsOpen)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
conn.Close();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> }<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> <span
style='color:blue'>catch</span> (<span style='color:#2B91AF'>Exception</span>
exp)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>throw</span> exp;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> }<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US style='font-size:9.0pt;font-family:新宋体;
background:white;mso-highlight:white'>
}</span><span lang=EN-US><o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-indent:36.0pt;
text-autospace:none'><span lang=EN-US style='font-size:9.0pt;font-family:新宋体;
color:blue;background:white;mso-highlight:white'>public</span><span lang=EN-US
style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:white'> <span
style='color:blue'>static</span> T Receive<T>(<span style='color:blue'>string</span>
serverAddress, <span style='color:blue'>string</span> queuename)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> T
data = <span style='color:blue'>default</span>(T);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-indent:36.0pt;
text-autospace:none'><span lang=EN-US style='font-size:9.0pt;font-family:新宋体;
background:white;mso-highlight:white'> <span
style='color:#2B91AF'>ConnectionFactory</span> cf = <span style='color:blue'>new</span>
<span style='color:#2B91AF'>ConnectionFactory</span>();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
cf.Address = serverAddress;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> <span
style='color:blue'>using</span> (<span style='color:#2B91AF'>IConnection</span>
conn = cf.CreateConnection())<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>using</span> (<span style='color:#2B91AF'>IModel</span>
ch = conn.CreateModel())<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
conn.AutoClose = <span style='color:blue'>true</span>;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.QueueDeclare(queuename);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>BasicGetResult</span> result = ch.BasicGet(queuename,
<span style='color:blue'>false</span>);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>QueueingBasicConsumer</span> consumer = <span
style='color:blue'>new</span> <span style='color:#2B91AF'>QueueingBasicConsumer</span>(ch);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.BasicConsume(queuename, <span style='color:blue'>null</span>, consumer);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>BasicDeliverEventArgs</span> e =
consumer.Queue.Dequeue() <span style='color:blue'>as</span> <span
style='color:#2B91AF'>BasicDeliverEventArgs</span>;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>if</span> (e != <span style='color:blue'>null</span>)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:#2B91AF'>IBasicProperties</span> props = e.BasicProperties;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>byte</span>[] body = e.Body;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
data = DeserializeFromByteArray<T>(body);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.BasicAck(e.DeliveryTag, <span style='color:blue'>false</span>);<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>if</span> (ch.IsOpen)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
{<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
ch.Close();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
<span style='color:blue'>if</span> (conn.IsOpen)<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> {<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
conn.Close();<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'>
}<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> }<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'><o:p> </o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> <span
style='color:blue'>return</span> data;<o:p></o:p></span></p>
<p class=MsoNormal align=left style='text-align:left;text-autospace:none'><span
lang=EN-US style='font-size:9.0pt;font-family:新宋体;background:white;mso-highlight:
white'> }<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal><span lang=EN-US>I will be appreciated if anybody can help
with this issue. Thank you in advance.<o:p></o:p></span></p>
<p class=MsoNormal><span lang=EN-US><o:p> </o:p></span></p>
<p class=MsoNormal><span lang=EN-US>Yiming<o:p></o:p></span></p>
</div>
</body>
</html>