⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 read.cgi-read=10344.htm

📁 mfc资料集合5
💻 HTM
字号:
<HTML><HEAD><TITLE>Re: Serial Port Programming Questions</TITLE>
</HEAD><BODY background="../fancyhome/back.gif" tppabs="http://www.codeguru.com/fancyhome/back.gif" bgcolor="#FFFFFF">
 <table WIDTH="100%"> <tr WIDTH="100%"> <td><table>
		<tr><td><img src="../mfc_sourcebook.jpg" tppabs="http://www.codeguru.com/mfc_sourcebook.jpg" 
		ALT="MFC Programmer's SourceBook" WIDTH="256" 
		HEIGHT="88"><td></tr>
		<tr><td valign="bottom"><font SIZE="+1" 
		color="#a0a0ff"><b>Discussion Board</b></font></td></tr>
		</table></td> <td width="40"></td>
		<td  align="right" valign="top"><td> </tr> </table> <hr><P ALIGN=CENTER>[ <A HREF="#Responses">Read Responses</A> | <A HREF="#PostResponse">Post a New Response</A> | <A HREF="index.cgi.htm" tppabs="http://www.codeguru.com/mfc_bbs/index.cgi">Return to the Index</A> ]
<A HREF="read.cgi-read=10301.htm" tppabs="http://www.codeguru.com/mfc_bbs/read.cgi?read=10301">Previous in Thread</A><P ALIGN=CENTER><BIG><BIG><BIG><STRONG>Re: Serial Port Programming Questions</STRONG></BIG></BIG></BIG>
<P ALIGN=CENTER><EM>Posted by <STRONG><A HREF="mailto:kraus@proxima.de">J黵gen Kraus</A></STRONG> on <STRONG>4/24/98 11:39a.m.</STRONG>, in response to <A HREF="read.cgi-read=10301.htm" tppabs="http://www.codeguru.com/mfc_bbs/read.cgi?read=10301">Serial Port Programming Questions</A>, posted by D.Lewis on 4/24/98 4:39a.m.</EM></P>
<!-- REMOTE_HOST: 141.7.42.29; REMOTE_ADDR: 141.7.42.29-->
<P>Oops, that's a bunch of questions ... ;-)
<P>Well, let's have a look at them:
<P>&gt;Is overlapped I/O (FILE_FLAG_OVERLAPPED) required for serial port programming? 
<BR>&gt;If not, what are the benfits of using it? 
<P>It is not required, but very useful, as non-overlapped I/O is basically blocking the calling thread... and serial timeouts can be long...
<P>&gt;If non-overlapped I?O is used, what happens if a thread is trying to read the &gt;comm device while another trhead is trying to write to it? 
<P>I just can guess, because I always ensure to avoid this by using synchronisation mechanisms as e.g. critical sections, but it'll give you something like 'ERROR_ACCESS_DENIED'
<P>&gt;IWhat is the benefit of using a thread versus a timer event if all that is &gt;required is to read the serial port device? 
<P>Hmm, i think you mean something like 'polling' when you mention timers, and that's from the stone age of computing... by using a thread, you can wait for I/O completion not eating CPU time
<P>&gt;How can the thread that is reading datat from the serial port communicate and &gt;synchronize with the main process? 
<BR>&gt;Is global data available to both the main process and the thread? 
<BR>They can use a shared buffer (synchronize access to it!). Threads run in the same address space as the process (= thread) that created them. Thus all process-global data is available to all threads.
<P>&gt;Is data local to the thread available to the main process? 
<BR>Definitely no.
<P>&gt;What is the best way to share memory between a thread and the main process? 
<BR>see above...
<P>Hope this helps,
<P>J黵gen
<P>
</P>
<P ALIGN=CENTER><EM><A HREF="http://www.proxima.de/">ProXima Engineering Office</A></EM></P>
<A NAME="Responses"><HR></A><P ALIGN=CENTER><BIG><BIG><STRONG>Responses</STRONG></BIG></BIG>
<P><UL>(No responses to this message have been posted.)</UL></P>
<A NAME="PostResponse"><HR></A><P ALIGN=CENTER><BIG><BIG><STRONG>Post a New Response</STRONG></BIG></BIG>
<P><FORM METHOD=POST ACTION="http://www.codeguru.com/mfc_bbs/index.cgi?post">
<INPUT TYPE=HIDDEN NAME="followup" VALUE="10344">
<P><CENTER><TABLE><TR>
<TD ALIGN=RIGHT><P><STRONG>Your Name:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="name" SIZE=40></TD></TR><TR>
<TD ALIGN=RIGHT><P><STRONG>E-Mail Address:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="email" SIZE=40></TD></TR><TR>
<TD ALIGN=RIGHT><P><STRONG>Subject:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="subject" SIZE=40 VALUE="Re: Serial Port Programming Questions"></TD></TR><TR>
<TD COLSPAN=2 ALIGN=CENTER><P><STRONG>Message:</STRONG><BR><TEXTAREA COLS=80 ROWS=15 NAME="body" WRAP=PHYSICAL>
</TEXTAREA></TD></TR><TR>
<TD COLSPAN=2 ALIGN=CENTER><HR WIDTH=50%><P><SMALL>If you'd like to include a link to another page with your message,<BR>please provide both the URL address and the title of the page:</SMALL></TD></TR><TR>
<TD ALIGN=RIGHT><P><STRONG>Optional Link URL:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="url" SIZE=40 VALUE="http://"></TD></TR><TR>
<TD ALIGN=RIGHT><P><STRONG>Optional Link Title:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="url_title" SIZE=40></TD></TR><TR>
<TD COLSPAN=2 ALIGN=CENTER><HR WIDTH=50%><P><SMALL>If you'd like to include an image (picture) with your message,<BR>please provide the URL address of the image file:</SMALL></TD></TR><TR>
<TD ALIGN=RIGHT><P><STRONG>Optional Image URL:</STRONG></TD><TD><INPUT TYPE=TEXT NAME="imageurl" SIZE=40 VALUE="http://"></TD></TR><TR>
<TD COLSPAN=2 ALIGN=CENTER><HR WIDTH=50%><P><SMALL>If you'd like e-mail notification of responses, please check this box:</SMALL> <INPUT TYPE=CHECKBOX NAME="wantnotice" CHECKED VALUE="yes"></TD></TR><TR>
<TH COLSPAN=2><HR WIDTH=50%><P><INPUT TYPE=SUBMIT NAME="Preview" VALUE="Preview Message"> <INPUT TYPE=SUBMIT NAME="Post" VALUE="Post Message"></TH></TR></TABLE></CENTER></P></FORM>
<HR><P ALIGN=CENTER><SMALL>The MFC Discussion Board is maintained with <STRONG><A HREF="http://awsd.com/scripts/webbbs/">WebBBS 2.24</A></STRONG>.</SMALL></P>
</BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -