Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >编程、应用程序和操作系统的时间准确性

编程、应用程序和操作系统的时间准确性
EN

Stack Overflow用户
提问于 2012-05-02 11:38:04
回答 1查看 110关注 0票数 2

这不是一个严格意义上的家庭作业问题,而是一个分支。

时间函数是如何在面向对象语言和命令式语言中实现的?如果您要获取一个以纳秒为单位的时间戳,并将其转换为字符串,那么时间不是总是不准确吗?

事实上,只要您对计时数据进行任何计算或工作,它现在是不是在某种程度上不准确?这个假设是正确的吗?

您可以很容易地解决网络延迟问题,但是在数据发送之前的本地情况又如何呢?到目前为止,似乎每个被问到的人都得出了这样的结论:时间函数永远不会完全准确--这只是公认的不准确。

从本质上讲,我问的是真实世界的应用程序是如何实现的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-14 16:51:16

实际上是家庭作业!

我们称之为time的东西是进步的。很久以前,这个东西甚至连数字都不带。只有行进中的太阳和行进中的星星给出了时间的提示。后来,特别是在数字革命开始后,数字被分配给了time。随着时间的推移,数字也在不断递增。我不想说太多关于所有不同格式的内容,但我要说明的是,这些方案中的大多数都有一个特定的时间来源。例如,Unix纪元是世界标准时间1970年1月1日的00:00:00。当然,这不是时间的开始,但选择这样的虚拟来源是为了将数字适应合理的数据结构。Back to you question:我们能捕获当前时间吗?不,我们不会,我们永远也不会。读任何一个时钟都会告诉我们光离开时钟到达我们眼睛的时间。可能很少但是..。当有人问我们时间时,我们很高兴地告诉你。但是,再一次出现了一些延迟,我相信我们可以在不增加延迟的情况下知道相同的时间。

知道了物理学,我们可以加上光线到达我们眼睛的延迟,我们的大脑所经历的延迟,以及我们所说的话到达被问及的人的耳朵所需的延迟。

但..

那么,如何实现一个真实的应用程序呢?没有THAT TIME。时间取决于你在哪里,时间取决于你周围的重力,时间取决于你的速度,以此类推。

但是......

事情并不是因为时间流逝而发生的。不,时间会让事情发生!

Again back to your question:通常在软件问题中,关于时间的问题基本上是关于进度和/或同步的问题。你想拿某样东西作比较。基本上,提供此进度的资源有两种可能的calls,称为timefirst call将在您进行调用时返回time。但你需要考虑到你会在稍后得到结果。所以你得到的时间有点像过去了。second call返回调用返回的time。这是一个稍微不同的实现,因为这样的函数必须知道它自己的服务需要多长时间。这可能只有通过一些校准才能实现。

这是两个主要的调用。

当谈到resolution (再次回到您的问题)时,我想排除将原子钟连接到您的计算机的选项。让我们假设您拥有一台现成的超市电脑。它可能以几个GHz的速度运行。您可能观察到的最高频率可能是cpu频率。在比方说4 4GHz,这样的频率将使计数器在纳秒内递增4倍,即250皮秒的时间分辨率。所以一般来说,你可能会说有亚纳秒级的分辨率。在实践中,常用的高频计数器在MHz范围内,这将给出100 In单位范围内的分辨率。

但是......

这些高频可以用作时间的标尺吗?在短期内,他们可以做到!但从长远来看,这要复杂得多,因为这些时间源必须与常见的时间源进行相位锁定,例如您的pc时间。高频计数器确实有很大的误差,这将导致许多微秒/秒的相位漂移。这只能通过仔细校准来克服。适当的校准可以允许将高频计数器锁相到系统时间。

一旦你有了一个精确到几微秒的时间源,你可能会以完全不同的方式诊断你的代码的行为,因为你可以预测潜在的延迟。

总结(一种哲学方法):

  1. Time使事情发生。
  2. time is从不为真或表示真值
  3. 任何与时间相关的值都表示过去的时间。
  4. practice
  5. Finally,中没有您所说的actual time (什么都不能!)

Windos Timestamp Project上可以更仔细地了解Windows高分辨率时间服务的实现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10412961

复制
相关文章
android attrs获取_关于Android attrs 自定义属性的说明
写个自定义控件时经常要自定义一些自己的属性,平时用的都是那几个,今天就顺便一起总结一下这个东东吧~
全栈程序员站长
2022/11/02
1K0
python attrs_Python attrs作用是什么?
class CommentSerializer(serializers.Serializer):
全栈程序员站长
2022/11/02
3970
android中怎么在View构造的attrs中拿到android给的属性以及attrs属性介绍[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/02
1.3K0
android 参数 attrs.xml,android – 定义自定义attrs
传统的方法充满了样板代码和笨拙的资源处理。 这就是我制作Spyglass框架的原因。 为了演示它是如何工作的,这里有一个示例,展示如何创建一个显示字符串标题的自定义视图。
全栈程序员站长
2022/09/27
5450
Unable to find chromedriver...AttributeError: ‘NoneType‘ object has no attribute ‘get‘
Unable to find chromedriver…AttributeError: ‘NoneType’ object has no attribute ‘get’
谙忆
2021/01/19
7910
android 自定义控件 attrs,android 使用attrs自定义控件
1、在values下新建一个attrs.xml的资源文件(my_attrs.xml)
全栈程序员站长
2022/11/02
8440
vue $attrs的使用
在上面提过,如果给子组件传递的数据,子组件不使用props接收,那么这些数据将作为子组件的特性,这些特性绑定在组件的HTML根元素上,在vue2.40版本之后,可以通过inheritAttrs = false 来控制这些特性是否显示在dom元素上 如:案例中父组件给子组件传递的row和isShow,子组件没有使用props接收,这个2个数据直接作为HTML的特殊属性。子组件使用inheritAttrs = true,那么特性显示在dom上,如果设置为false,那么特性不显示在dom上
全栈程序员站长
2022/11/02
1.4K0
vue $attrs的使用
vue组件通讯之$attrs
我们会遇到这样的场景,比如对element-ui的el-table组件进行二次开发,但是el-table组件有很多属性比如控制高度的height,传入数据的data还有border、size、fit等一个个的去传显然不大现实,这个使用用$attrs处理起来就会特别优雅。
全栈程序员站长
2022/11/02
3850
python attrs_一直比较疑惑python中关于attrs的问题
links = getLinks(“/wiki/Python_(programming_language)”)
全栈程序员站长
2022/11/02
4290
Vue - 组件通信之$attrs、$listeners
vue通信手段有很多种,props/emit、vuex、event bus、provide/inject 等。还有一种通信方式,那就是 $attrs 和 $listeners,之前早就听说这两个api,趁着有空来补补。这种方式挺优雅,使用起来也不赖。下面例子都会通过父、子、孙子,三者的关系来说明使用方式。
WahFung
2020/08/22
1K0
AttributeError: NoneType object has no attribute‘’
AttributeError: ‘NoneType’ object has no attribute ‘text’
狼啸风云
2020/10/09
3.5K0
vue的$attrs_vue获取list集合中的对象
原文网址:Vue–attrs, listeners–使用/教程/实例_IT利刃出鞘的博客-CSDN博客
全栈程序员站长
2022/09/27
5.2K0
Python爬虫之携程网笔记一
前两天看了许久BeautifulSoap,想找个网站挑战一下,刚好想到之前曾经爬过携程网,想爬一下酒店信息试一下,没想到刚尝试就碰到了钉子。
python与大数据分析
2022/03/11
4630
AttributeError: 'NoneType' object has no attribute 'append'
附加列表元素时发生的错误,去掉赋值,把第四十行改为re_bb_area.append(proportion)
狼啸风云
2019/05/15
2.7K0
AttributeError: 'NoneType' object has no attribute 'append'
Vue 新增的$attrs与$listeners的详解
inheritAttrs:默认值true,继承所有的父组件属性(除props的特定绑定)作为普通的HTML特性应用在子组件的根元素上,如果你不希望组件的根元素继承特性设置inheritAttrs: false,但是class属性会继承(简单的说,inheritAttrs:true 继承除props之外的所有属性;inheritAttrs:false 只继承class属性)
tianyawhl
2019/04/04
2.7K0
Vue中 $attrs、$listeners 详解及使用
传送门:Vue中 子组件向父组件传值 及 .sync 修饰符 详解 传送门:Vue中 状态管理器(vuex)详解及应用场景 传送门:Vue中 事件总线(eventBus)详解及使用 传送门:Vue中 provide、inject 详解及使用
全栈程序员站长
2022/11/02
1.6K0
Python3网络爬虫(七):使用Beautiful Soup爬取小说
本文总结了一些常见的网络爬虫和反爬虫技术,并介绍了一种基于Python的爬虫程序。该爬虫程序可以爬取指定网站的文章内容,并支持对某些网站的反爬虫策略。同时,还介绍了一种基于Web的爬虫程序,该程序可以爬取网站的文章列表,并支持对某些网站的反爬虫策略。
Jack_Cui
2018/01/08
4.5K0
Python3网络爬虫(七):使用Beautiful Soup爬取小说
在 Vue 中,使用 $attrs 构建高级组件
这节课,我们来看下 Vue3 中的 $attrs 属性。首先,我们会介绍它的用途以及它的实现与 Vue2 有哪些不两同点,并通过事例来加深对它的理解。
前端小智@大迁世界
2022/10/27
2.5K0
在 Vue 中,使用 $attrs 构建高级组件
Vue中的$attrs和$listener的使用
疫情之前,在家关了这么久,也没怎么更新,最近在看大佬的项目,学习下新的思路。之前项目上,父子组件传递数据,都是用props去接收和this.emit触发父组件方法。这次我们用attrs和
青年码农
2022/05/31
1.2K0
Vue中的$attrs和$listener的使用
每天一道 python 面试题 - Python中的元类(metaclass)
虽然在Python中您可以对元类使用任意可调用对象(例如Jerub演示),但是更好的方法是使其成为实际的类。type是Python中常见的元类。type它本身是一个类,并且是它自己的类型。您将无法type纯粹使用Python 重新创建类似的东西,但是Python有点作弊。要在Python中创建自己的元类,您实际上只想将其子类化type。
公众号---人生代码
2020/05/16
9420

相似问题

AspectJ、Spring AOP和JBoss AOP在异常处理方面的比较

11

我们可以将AOP方面应用于多个maven项目吗?

12

AOP +同步

12

Python中面向方面编程(AOP)

24

spring中的AOP方面警告

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文