[讨论] 《Rust实战》书友互动第九集:时间与时间保持

nmg   2024-6-11 09:31 楼主

来到时间的章节,也即将进入本书的倒计时,期待大伙继续讨论,共同学习也。

 

演绎时间:即日起至6月18日

脚本限定:《Rust实战》第九章 
 
角色分配:
提问角色(4位)和解题角色(4位)、总结角色(2位),下方跟帖第一位书友嘉宾是提问角色,第二个是解题角色,解答第一个提问,解答完后,解题角色可以继续提问,也可以不提问,结束一次问答循环。后面参与继续新起问答接龙即可,最后2位是章节总结角色,以文字或者思维导图的形式,对本章进行总结,至此一次互动结束。注意:提问角色发布的问题,对解题者理解、学习本章Rust内容有切实意义;提问角色所发布的问题不可重复。
 

活动交流群

论坛有开设嵌入式交流群,欢迎感兴趣的小伙伴,微信添加“helloeeworld”为好友,对话:加入嵌入式交流群,入群交流。

扫码,对话:加入嵌入式交流群。

回复评论 (11)

在(Windows和非Windows)中,设置时间有什么不同,如何实现遵循一种相同模式?

点赞  2024-6-11 10:48
引用: lugl4313820 发表于 2024-6-11 10:48 在(Windows和非Windows)中,设置时间有什么不同,如何实现遵循一种相同模式?

在 Rust 中,设置时间在 Windows 和非 Windows 系统中有所不同。在 Windows 中,可以使用 SetSystemTime 函数来设置系统时间,而在非 Windows 系统中,可以使用 settimeofday 函数来设置系统时间。

为了实现遵循一种相同模式,可以使用 Rust 的条件编译功能。可以使用 cfg 属性来检查当前操作系统,并根据操作系统选择不同的时间设置函数。

点赞 (1) 2024-6-11 13:15

如果想实现类似c语言中#if来导入库的功能,用什么形式?

顺便问个偏门问题吧——哪家NTP服务器时间不准?

本帖最后由 nemon 于 2024-6-11 16:24 编辑
点赞  2024-6-11 15:09

做个简单的个人感想分享,说实话看到现在,对本书的一大感觉是,翻译太"直",机翻感觉太明显,说实话比较失望,原文行文太啰嗦晦涩,对知识点,概念,举例缺乏简单简洁的描述,缺乏对问题,概念,知识点本质,一针见血的说明,为了显得行文轻松,形象,过于非必要的例子,比喻,非必要描述语言等反而让全文显得过于啰嗦,难以理解,对本书说实话比较失望。说实话本书篇幅至少可以缩减一半以上。

比如本章的一些语句读起来就很不通顺,很难理解,举几个例子:

1.比如P307,“但是在这件事上,我们将会"做个弊"” 这一句话就让人云里雾里,”做个弊“的比喻感觉毫无理由,一点都不贴切,也没必要,个人理解,直接说是"会对数据做处理"即可,感觉作者为了比喻而比喻了,为了显得行文直白,过于没必要的比喻,反而变得不直白了。 个人觉得简单的描述就行,最重要的描述清楚意思。

2. 比如P307,“这样做的效果就是,极大地“惩罚了”那些速度较慢的时间服务器”。这里翻译为惩罚了,也是让人迷糊,按照文中意思,应该是"降低权重",所以这里直接翻译为惩罚了,也太直译(甚至怀疑是机翻了),除了这里翻译的问题,这句话本身也有逻辑问题,按照文中意思,并不是速度较慢的要降低权重,应该是偏差大的要降低权重。

类似上述例子的内容太多了,导致本书阅读起来说实话真的太晦涩,一是翻译的问题,一是原文本身的风格叙述确实不够简洁简练,不够直击要害,而是过于啰嗦,花费较多的篇幅但是没有说明问题的本质,反而让人迷糊。

点赞  2024-6-11 23:08

6楼 nmg 

引用: qinyunti 发表于 2024-6-11 23:08 做个简单的个人感想分享,说实话看到现在,对本书的一大感觉是,翻译太"直",机翻感觉 ...

建议收到,已反馈给人民邮电啦,他们会反馈给编辑内部。

点赞  2024-6-14 17:24

7楼 nmg 

大家问答接龙继续哇,继续接4楼的nemon的问题啊

点赞  2024-6-14 17:25
引用: nemon 发表于 2024-6-11 15:09 如果想实现类似c语言中#if来导入库的功能,用什么形式? 顺便问个偏门问题吧——哪家NTP服务 ...

【顺便问个偏门问题吧——哪家NTP服务器时间不准?】

这个我搜了看,NTP这个都是分时区,分经纬度的,

 

image.png  

另外看起来也和你去访问的服务器的网络状况有关,所以准不准可能各有不同。反正最好是就近原则,离你网络近的不拥挤的,应该就会好。

image.png  

点赞  2024-6-14 22:33
引用: qinyunti 发表于 2024-6-11 23:08 做个简单的个人感想分享,说实话看到现在,对本书的一大感觉是,翻译太"直",机翻感觉 ...

里面也有一些疏漏还没校正,我记得以前买书,都附有一张勘错(甚至隔段时间还会专门收到更新的)。现在长大点,书读少了,发现值得精读的书也少了。。。

点赞  2024-6-17 13:58
引用: nemon 发表于 2024-6-11 15:09 如果想实现类似c语言中#if来导入库的功能,用什么形式? 顺便问个偏门问题吧——哪家NTP服务 ...

NTP时钟这个我知道答案哦,NTP时钟是分等级的,如果没有上级时钟的NTP源(比如一个封闭网络中选取的一台服务器),那么时钟精度肯定是不高的,但是如果网络中全部设备的时钟都更随这个时钟源,那么即使这个时钟源一天只有23个小时,也是可以作为一级时钟源,从时钟源取得时钟并将自己作为NTP时钟源的化,需要降低时钟源等级。

另外NTP时钟设计的时候,似乎没有考虑到多路径的情况,如果每次收发包的路径不同,路径延迟不一样,获取的时钟自然会有误差。

点赞  2024-6-17 14:04
引用: nemon 发表于 2024-6-11 15:09 如果想实现类似c语言中#if来导入库的功能,用什么形式? 顺便问个偏门问题吧——哪家NTP服务 ...

在 Rust 中没有直接类似 C 语言中 #if 来导入库的方式。Rust 的依赖管理是通过 Cargo.toml 文件来进行配置的。至于哪家 NTP 服务器时间不准,这也不确定,不同的 NTP 服务器可能会因为各种原因出现短暂的时间偏差,一般来说知名的、广泛使用的 NTP 服务器可靠性会高一些。

点赞  2024-6-18 15:53

NTP是一种服务系统,其原理是时间基准源都有较为精准的时间钟系统,NTP的客户端使用UDP协议,向NTP发送请求后都会接到服务的时间搓数据包,客户端多次发送和接收服务器时间,就可以计算出客户端大概的路程时间,根据该时间可以校时的具体时间。rust的编程中的时间系统提供了两种格式,一种是带时区的UTC系统和不带时区的本地时系统。但是根据个人经验,时间应该定义成UTC较好,本地时间只用来显示。

点赞  2024-6-18 16:53
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复