CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

定时操作(OnTimer)的实现是否属于多线程技术?

楼主yangchengl(爱在今生)2006-05-01 10:17:31 在 VC/MFC / 基础类 提问

请解释一下,谢谢! 问题点数:10、回复次数:14Top

1 楼lisypro()回复于 2006-05-01 10:53:25 得分 1

应该是  
  但是不是标准的多线程Top

2 楼lonely001(独行客)回复于 2006-05-01 11:01:55 得分 0

不是Top

3 楼lonely001(独行客)回复于 2006-05-01 11:03:37 得分 2

ONTIMER只是WINDOWS内置的消息发生器产生的消息,ONTIMER消息也是要排队的,这就是为什么ONTIMER很多时候并不精确的原因Top

4 楼lyl_rabbit(阿牛)回复于 2006-05-01 13:53:06 得分 0

不是,但多线程是通过时间分片实现的Top

5 楼zh2817()回复于 2006-05-01 14:44:10 得分 0

不是Top

6 楼Featured(我握着爱情的门票静静排队……)回复于 2006-05-01 15:18:08 得分 0

不是。  
  但比较特殊。准确地说应该是“中断”技术Top

7 楼yangchengl(爱在今生)回复于 2006-05-01 18:14:35 得分 0

这样说对不对,ONTIMER实现了若干段程序的并行运行,但它并不是为各段程序创建了对应的线程,而是采用了软中断技术。Top

8 楼soaroc(会飞的猪)回复于 2006-05-01 21:28:09 得分 0

ONTIMER实现了若干段程序的并行运行  
  -----------------------------------------------------------------------------------  
  对于单CPU来说,是不可能实现程序段的并行运行的,只能是交替运行。像上面的某一楼所说的,其实它与其他的消息没有什么大的区别,只不过此消息的入队是循环的。Top

9 楼yangchengl(爱在今生)回复于 2006-05-02 08:30:41 得分 0

它与其他的消息没有什么大的区别,只不过此消息的入队是循环的。  
  这一点解释的好。  
  我说的并行是指宏观上并行。在一定时间内这些程序段都获得了执行的机会。Top

10 楼BXAllen()回复于 2006-05-02 20:57:03 得分 0

是单线程的!Top

11 楼BXAllen()回复于 2006-05-02 21:01:03 得分 4

mfc在cwnd中的ontimer是调用的api的settimer函数,可以在帮助文档中找到的.调用的函数是通过一个函数指针.如果是多线程的,那么是不可以通过像他定义的那样的函数指针实现的.至于函数的原型,可以自己查一下看看就明白了!  
  Top

12 楼mjm_d(菠萝蜜多)回复于 2006-05-03 14:02:00 得分 0

不是系统级的  
  但是你可以用它模拟一些简单的不要求精确的用户自定义级别的线程Top

13 楼roscoe(草上飞)回复于 2006-05-03 15:43:45 得分 3

不是多程技术,但应是协作式多任务,线程是抢占式多任务Top

14 楼sh_caizicheng(每天一小步,成就一大步)回复于 2006-10-21 12:45:17 得分 0

谢谢!学习一下Top

相关问题

关键词

得分解答快速导航

  • 帖主:yangchengl
  • lisypro
  • lonely001
  • BXAllen
  • roscoe

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo