VC/MFC
VB
Delphi
C++ Builder
C/C++
Java
.NET技术
MS-SQL Server
PowerBuilder
DB2
Oracle
Web 开发
Linux/Unix社区
硬件/嵌入开发
移动平台
您的位置:
程序门
->
vc/mfc
-> 进程/线程/dll
请帮忙测试:sleep 和 waitforsingleobject的返回时间??谢谢!
[
收藏此页
] [
打印本页
]选择字色:
默认
灰色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
背景色:
默认
黑色
红色
黄色
绿色
橙色
紫色
蓝色
褐色
墨绿
深蓝
赭石
粉绿
淡绿
黄灰
翠绿
综红
砖红
淡蓝
暗红
玫瑰红
紫红
桔黄
军黄
烟灰
深灰
灰蓝
字体:[
大
][
中
][
小
]
请帮忙测试:sleep 和 waitforsingleobject的返回时间??谢谢!
发表于:
2008-01-22 14:14:52
楼主
dword dwtick = gettickcount();
sleep(1);
dword dwtimeerr = gettickcount() - dwtick;/////dwtimeerr = 16左右,而不是1左右。
waitforsingleobject(...., 1)也是一样。
为啥???
谢谢!
发表于:
2008-01-22 14:21:42
1
楼 得分:
0
任务切换时间大约是??毫秒。
??代表不同的系统会有所区别。
发表于:
2008-01-22 14:28:39
2
楼 得分:
0
同意ls,sleep后系统任务切换是需要时间的。
发表于:
2008-01-22 15:59:51
3
楼 得分:
0
楼主你只是做代码实验,还是你的程序要求这么高的精度??
发表于:
2008-01-22 16:01:41
4
楼 得分:
0
首先,sleep函数延时是不准的,特别是在延时数量比较小的情况下
其次,在window多任务操作系统下,你的代码不是每时每刻都在执行,可能执行完sleep(1)后系统就执行其他的进程(线程)去了, 可能会过一段时间再执行dword dwtimeerr = gettickcount() - dwtick;/////
发表于:
2008-01-22 16:05:20
5
楼 得分:
0
msdn:
the sleep function suspends the EXECution of the current thread for
at least
the specified interval.
系统有自己的线程调度机制,通常是按照时间片来轮流执行的。
再看看这个帖子:http://www.gamedev.net/community/forums/topic.asp?topic_id=393118
发表于:
2008-01-22 19:04:13
6
楼 得分:
0
就算考虑到线程切换也不用那么久吧,
在4台xp系统机子上都是16左右;只在1台2k系统上是0。
是程序需要。
程序中一个线程要做大量的视频文件的解码转换工作,由于解码函数都是很耗资源的,要是用循环不断的解码的话就容易造成系统100%的cpu,故想着可以在中间sleep一段时间,可是要是这样的sleep至少也要16,这样的话效率就太低了。
而且还发现一个很奇怪的现象,要是用循环不断解码的话我的80%的解码函数调用都要16ms左右才能返回,并且差不多100%cpu,要是sleep的话每个解码函数调用都可以在1ms以内返回,不知这是不是也跟线程切换有关。
发表于:
2008-01-22 19:08:33
7
楼 得分:
0
把解码线程的优先级设低点试试..
发表于:
2008-01-22 19:20:52
8
楼 得分:
0
0
发表于:
2008-01-22 19:43:47
9
楼 得分:
0
up
发表于:
2008-01-22 22:18:12
10
楼 得分:
0
up
发表于:
2008-01-23 09:34:36
11
楼 得分:
0
windows是多任务,不是实时操作系统!
发表于:
2008-01-23 10:48:39
12
楼 得分:
0
楼主是要实现精确定时到1ms?用sleep肯定不行的,它的精度只能到55ms(根据cpu不同而有所差异),肯定是没办法到1ms那么精确的。如果想精确到1ms,只能用定时器中断的方式了。windows系统的时间片是1ms,即1ms中断一次当前在进行的任务,系统获得cpu的控制权,去查看各个进程的优先级,然后根据优先级重新分配时间片,如果想定时精度跟系统一样,那必须要有系统级的权限,也就是你的程序和操作系统是平级的,这样的话你才可能实现1ms的精确定时。而要做到这一点,光设置线程的优先级肯定是不可行的,因为系统是靠时钟中断来进行调度的,硬件中断肯定比软中断厉害,所以如果你要实现这样的定时,只能自己写个驱动挂接系统时钟,然后响应中断来实现延迟了。
发表于:
2008-01-23 13:54:35
13
楼 得分:
0
试试sleep(0)
发表于:
2008-01-23 14:11:33
14
楼 得分:
0
sleep函数调用和gettickcount函数调用都是需要时钟,不可能是1;
我试过sleep好像是50左右准确
下一篇:
求助:关于.c文件加密的问题
上一篇:
关于hook 急在线等@~~有代码
相关文章
ctreectrl insertitem 插入首元素
打印编程高手请进!
求助!盼高手帮忙啊!vcsql server2000数据库...
win下的多进程处理socket的问题
关于bcg中的cbcgplistctrl的排序问题
算法:平面上一些点,如何找某一点周围一圈最近的...
为什么我的文字颜色settextcolor后不变化啊
请教sqlconfigdatasource函数
***模拟qq发信息!!***
那位前辈给介绍一下多线程,让我有个总体的印象
本人一菜鸟,希望有一老师长期指导,本人对vc非常感...
setwindowtexta()
corba服务中多线程的问题
請問哪兒有中文ace資料下載
关于模拟输入的问题,急~~~
mfc多文档应用程序如何用多个窗口打开同一文件?...
点击关闭按钮隐藏窗体
new 出来的 dialog , 关闭后...
如何把ansi字符串转换为unicode?
能帮忙解释一下strsql.format("select *&n...
其他资讯
activex控件在vc下的使用问题
关于数据库的实时保存问题!加急!在线等高手!
在线等候:怎么把lpctstr类型的字符串赋值给char...
vc中有数据压缩类吗?
yc++编译器、网页浏览器
windows服务中如何使用oracle数据库
求教 基于web方式的视频监控系统解决方案
drawtext函数使用dt_calcrect参数后返回的rect代...
请问如何将jpeg图象显示在主对话框中?
线程占cpu!!!
高手快过来帮我看看这两段代码有什么区别
关于菜单消息映射的问题
有什么比较通用的办法,截取某个窗口的文字呢?
有没有类似access设计表视图那样的表格控件
为什么资源不能打开啊(在线等,急啊)
给【liru818】(programer)的50分
有誰知道hp laserjet 3390 serie...
程序起不来了
创建一个地程.让子进程独立运行.父进程退出应该怎...
请教,如何让指定的文件被 windows me...
快速检索
分类导航标签a
产品/厂家开发者大会
微软创新杯软件开发大赛渲染技术竞赛
JavaWeb
PowerBuilder数据库相关
Linux/Unix社区系统维护与使用区
Web 开发vbScript
《程序员》杂志购买/订阅/渠道
扩充话题体育沙龙
移动平台手机操作系统
产品/厂家英特尔信息技术峰会
Web 开发非技术区
WebSphere开发工具/WSAD
扩充话题活动聚会
VC/MFC非技术类
VC/MFC非技术类
最新资讯
request.querystring["factoryname"].tostring(...
as中能运用或引用html代码吗?
treeview的样式
我也要测试
难难!!!请问在框架怎样实现高度随内容自动增高...
quickreport显示boolean
系统出问题!急
管理信息系统vpn无法打开
javawebstudio连接mysql的问题~~~
怎样拆分cstring如000077798000拆分成777.98(急...
请教大家一个关于cfile类的问题????????...
有没有办法在程序窗体隐藏的情况下点击窗体内twe...
如使两个局域网(通过局域网连接internet)内的两...
计算文件数目。。。
献给热爱星际的朋友们!散分!!
医院系统 打印票据的问题 帮帮小弟.
求助: vc6下mdiprev函数的具体实现
linux设备编号与硬盘分区之间是怎样的关系
vc下怎么实现所见 非 所得的打印和打印...
大数据量,求数据库设计
有位朋友用asp.net开发过erp或进销存的呀?
版面最近很冷清,不知道有什么好办法可以活跃一下...
asp.net 内部讨论群:23064774
求助关于.net2003两个小小问题
vista system32目录 总是会有一些乱码...
用datalist数字分页,先分出标题页,然后再分内容...
用application做计数器遇到的问题。怎么计数总是...
怎样得到文件大小?
预处理简单问题?
上传进度条问题
多表连接查询时时,join该怎么用,有点糊涂~~~~~...
eclipse配置web开发程序
关于bindingsource的一个奇怪的问题
winnt启动中显示winsrv.dll找不到的问题。请高手...
上线问题,紧急求助!!!history.go(-1)和iframe的...
我完成了libjpeg的库编译,如何做测试?
ertos的狠问题
vb中如何运行保存到数据库里面的判断语句,并返回...
帮我看看tomcat配置文件谢谢..,有没什么问题,访问...
车载系统播放器 图像闪烁问题
热门点击
初学php,求助,关于用表单来交互
难道是梅mm的生日?
有经验的给点建议。
[送分]老的不能再老的题目了,斐波那契序列
sql-dmo(odbc sql state:42000),这个...
三角坐标的问题
如何通过函数名(字符串)取得对函数的调用
新手问题~~纯粹送分~~document.write后为什么之后...
收到珠海某公司的offer,大家给点意见啊~~??
oracle dba 招聘
问个ajax.net脚本中returnvalue的问题
采用"post", "get.aspx?flag="+flag, ...
pb9里带的asa8数据库支持程序里直接修改数据库的...
一个关于页面刷新的问题 急!!!
(写控件超简单的问题)我写了一个控件,控件上面是...
cmf2msgflow
如何在右键菜单中加入图标啊?
vf中照片的添加,删除,上一位,下一位,怎么做,谢谢...
有在sony工作的吗?
有关窗口过程函数的问题!
急!急!急!!! 汇编时的一个小错误
c#网页提交数据,正则表达式
如何实现这种跳转?
网络连接打不开
请问抽象类和接口有什么区别呀
c/s程序 自动更新问题???
写一个函数实现向一个文件框发送一个enter键消息...
求教如何实现在ie和ff下面都能复制粘帖?-处女帖...
分页不显示,也不报错
关于报表的问题
sping中facade的注入问题
rs1(0).value问题
给我小学学校做英文网站的十个要and不要的理由!
用友软件工程有限公司诚聘英才
如何进行音效处理的仿真
smart phone的sdk有什么函数可以直接拨打电...
排序问题,请教高手
ipv6 要在什么样的网络环境下用啊
请教高手:这样的情况如何下载?
是谁说ntsd是无敌命令来的?!胡扯!