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

📄 subject_45751.htm

📁 一些关于vc的问答
💻 HTM
字号:
<p>
序号:45751 发表者:lifr 发表日期:2003-07-03 12:56:38
<br>主题:关于调用窗口过程的疑问?
<br>内容:窗口过程是一种回调函数,如果我理解没有错误的话,应该是由OS调用的.那么我的问题是:<BR>1 既然回调函数不是由用户的进程(线程)调用,那么它的执行就不会在用户进程空间,也就是说,用户空间的那些全局变量,回调函数都是不可以使用的.但事实并不是如此.why?<BR>2 既然是OS调用回调函数,那么如果在回调函数里阻塞,则执行这个回调函数的线程不就阻塞了吗?如果其他程序的窗口过程还能执行的话,必须是OS为每个程序产生一个执行窗口过程的线程.是这样的吗?<BR>菜鸟问题,希望高手赐教.
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:lijb 回复日期:2003-07-03 14:05:24
<br>内容:你的理解不对,回调函数是由你作的程序来调用。作一个比喻,操作系统像汽车,你的程序是录音机,而回调函数是磁带。你放什么磁带,录音机就放什么歌,而录音机是在汽车上的,也是由汽车来驱动录音机。回到程序上,回调函数是让你的程序来调用的,来定义你程序的属性和功能,它是由操作系统来驱动。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:lifr 回复日期:2003-07-03 16:20:08
<br>内容:是的,我的理解不对,<BR>那么,如果在窗口过程阻塞的话,那么整个应用程序也会阻塞的,对吗?(单线程).
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:黄涧石 回复日期:2003-07-03 16:53:01
<br>内容:1。窗口过程有个很重要的任务是消息处理,WINDOWS采用的好像是消息映射方式,且不管如何映射,操作系统实现窗口调用的方式是向窗口发送消息,然后由线程调度函数调度不同的线程,由窗口线程自己处理相关的消息,所以并不存在变量空间的问题。<BR><BR>2,如果窗口调度线程和用户应用程序线程是同一个线程的话,如果在处理系统消息时阻塞,那么用户应用程序当然也阻塞。但问题是进行消息处理时好像不存在阻塞条件,因为消息处理不需要进行临界区的访问(如IO)。<BR><BR>不知道我理解对不对。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:lijb 回复日期:2003-07-03 16:53:32
<br>内容:是的
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:lijb 回复日期:2003-07-03 17:04:17
<br>内容:像QQ,它就是多进程,至少两个进程,一个工作进程,一个界面进程,工作进程负责接收数据和发送数据,界面进程负责响应你的操作。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

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