找回密码
 注册
搜索
热搜: 嘉康利
查看: 895|回复: 8

[交流咨询] 蓦然发现时间的惊天秘密!!!

[复制链接]
发表于 2010-2-15 16:36:23 | 显示全部楼层 |阅读模式
请大家按照我说的步骤做: 1.用鼠标双击电脑右下角的时间栏。
2.请大家注意图片左侧的秒针,也就是注意看秒的跳动频率,怎么居然是五快一慢? 要说我的电脑有问题?可我看过许多电脑都是这样;要说是系统问题?可该系统的时间设置是世界同步的时间,那还有什么呢??? 难道说现在的时间有些变化了??我不敢想...... 请大家都看一下,也帮我解惑一下,时间到底怎么了??
发表于 2010-2-15 16:55:18 | 显示全部楼层
由些发现,楼主有多闲,哈哈
回复

使用道具 举报

发表于 2010-2-15 19:40:31 | 显示全部楼层
你才知道啊?
回复

使用道具 举报

发表于 2010-2-15 19:54:16 | 显示全部楼层
不对吧?是四快一慢吧..这很正常,那四快一慢结合起来就是很精确的5秒拉...也就是每5秒它要确认一下正确的时间.
回复

使用道具 举报

发表于 2010-2-15 19:55:10 | 显示全部楼层
为什么2K/XP/2K3系统的时钟前四秒快第五秒慢?违背一下不写技术的原则,普及一下科学知识。 如果你细心注意过的话,点开2K/XP/2K3系统右下角的时钟,让他的秒针走动起来的时候,会出现一个很有意思的现象:前四秒钟数字和秒针变化的快,第五秒感觉却很长,这是为什么呢? 原因实际上出在那个表的精度上。 如果学过Windows的C++编程可以知道,WM_TIMER是常用的定时器。但这个定时器的精度不是很高。在Windows的Clock这个子程序中,实际上就是用了WM_TIMER进行定时。当显示秒针时,表的更新由这样一句语句触发: SetTimer (hWnd, TimerID, OPEN_TLEN, 0L); SetTimer的用法很简单,设置好Timer之后,每次触发就只要重新取当前时间重画表盘就可以了。那么OPEN_TLEN就是Timer的触发时间。这个时间是一个常量,在受到影响的系统里面被定义为450,也就是不到半秒。 定义成450ms会出现什么现象?我们来看一组数。第一行和第三行是更新的次数,他们下面是更新的毫秒数。

1 2 3 4 5 6 7 8
450 900 1350 1800 2250 2700 3150 3600
9 10 11 12 13 14 15 16
4050 4500 4950 5400 5850 6300 6750 7200

可以看到,在第一秒内(<1000)表实际上进行了两次更新,第二秒、第三秒、第四秒都是如此。而第五秒的时候,你就需要等三次更新才能看到(注意9、10、11都是4xxx的样子)。因此就出现了这个怪异的现象:前四次都是数两下就会跳一秒,第五次要数三下才跳一秒,第五秒的出现时间比前四秒都多了50%,所以就感觉很长了。 那为什么要设计成这样?大概是因为这个表只是让你有个时间观念,只要不走错,秒级的响应并不重要吧……毕竟这个世界上没有多少人一天到晚盯着秒针数拍子的。
回复

使用道具 举报

发表于 2010-2-15 20:03:28 | 显示全部楼层
看来这是正常的啦
回复

使用道具 举报

发表于 2010-2-16 22:21:23 | 显示全部楼层
我看了下,也是的
回复

使用道具 举报

发表于 2010-2-23 19:02:50 | 显示全部楼层
回复 5# 华山弟子
强悍
回复

使用道具 举报

发表于 2010-3-8 12:49:20 | 显示全部楼层
楼主真是有才   天天闲的看秒表 都能看出所以然来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|AIGANYU.COM

GMT+8, 2024-11-16 03:41 , Processed in 0.094952 second(s), 17 queries .

Powered by Discuz! AiGanYu

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表