国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Rust in Action筆記 第九章 時間管理

這篇具有很好參考價值的文章主要介紹了Rust in Action筆記 第九章 時間管理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

  1. 本章主要講如何實現(xiàn)一個網(wǎng)絡(luò)時間協(xié)議NTP(Network Time Protocol)客戶端,谷歌的世界時間同步誤差大概在7毫秒,開源網(wǎng)站CockroachDB的延遲在數(shù)十毫秒,使用了NTP協(xié)議,在處理與時間敏感的數(shù)據(jù)時,chrono庫成為了事實上的標準庫;
  2. 由于潮汐影響和地球轉(zhuǎn)矩的問題,事實上每一秒的長度不是固定的,引出了兩種時間機制,一種是TAI,用于世界的原子時鐘,每秒長度固定;另一種是UTC,用于通常生活中,差不多每隔18個月會添加1個閏秒,到2016年,TAI和UTC的偏差已經(jīng)達到了36秒;在計算機系統(tǒng)中通常跑著兩種時鐘(clocks),一種叫實時時鐘(real-time clock),根據(jù)物理設(shè)備(例如石英鐘)的震動來統(tǒng)計時間,用于沒有電源驅(qū)動的場景,一種叫系統(tǒng)時間(system time),系統(tǒng)時間根據(jù)硬件中斷來增加,所有電腦上的應(yīng)用獲取時間都是通過system time;
  3. 9.3節(jié)介紹了幾個時間有關(guān)的術(shù)語,例如Absolute time、Real-time clock、system clock、monotonically increasing、 steady clock、 High accuracy、 High resolution、fast clock 等等,對于理解各種不同的時間有很大的幫助;
  4. 時間的編碼使用了2個32位integer,第一個表示秒,第二個表示n分之一秒(fraction of a second),好處有兩點,簡單易懂,計算高效;挑戰(zhàn)也有兩點,范圍固定(有上限,因為integer寬度有限),不準確(整型是離散的而不是連續(xù)的),幾個常見的表示時間的方式有,a. UNIX時間戳,32位整型,表示從1970年1月1日其的毫秒數(shù);b. MS Windows FILETIME(從Windows 2000開始啟用),64位無符號整型,表示從1601年1月1日(UTC時間)到當時的100納秒的增量(increments);c. Rust社區(qū)的chrono庫,32位有符號整型,同時帶有NaiveTime的枚舉類型來表示不同的時區(qū);d. time_t類型,在C標準庫libc里,不同版本也有一定區(qū)別,詳見Page298;
  5. 9.5給出了應(yīng)用獲得系統(tǒng)時間的具體調(diào)用過程,如下Rust in Action筆記 第九章 時間管理,Rust in Action,rust,筆記,開發(fā)語言
  6. 獲取本地時間的方法可以使用chrono::Local::now(),如果返回值是感嘆號!,表示該函數(shù)永不返回,代碼跑到unimplemented!()宏這里時會panic;
  7. clap::Arg或者clap::App來處理輸入?yún)?shù),clap::Arg可以幫助簡單處理輸入?yún)?shù),clap::App把整個程序封裝成應(yīng)用,可以添加版本、參數(shù)說明、參數(shù)是否必須等要求;
  8. 可以在cargo.toml指定[target.'cfg(not(windows))'.dependencies]用于非windows操作系統(tǒng)編譯時的依賴,同理,去掉not可以用于設(shè)置Windows操作系統(tǒng)的依賴;
  9. NTP有兩種模式,一種是always on,采用p2p的形式來在局域網(wǎng)中達成一個穩(wěn)定的關(guān)于"now"的共識,一種是request/response,通過向服務(wù)器發(fā)送請求(request)來獲取一個中心化認可的時間戳,通過記錄傳輸時間來校準;
  10. request/response模式有4個時間點需要記錄,t1表示客戶端發(fā)出request的時間戳、t2表示服務(wù)端收到客戶端request的時間戳、t3表示服務(wù)端發(fā)出response的時間戳、t4表示客戶端收到response的時間戳,這4個時間戳的格式在RFC2030中規(guī)定,流程如下圖所示,9.9.1節(jié)提供了詳細實現(xiàn)Rust in Action筆記 第九章 時間管理,Rust in Action,rust,筆記,開發(fā)語言11. NTP中要計算兩個值, θ \theta θ δ \delta δ,如下表所示,表示從客戶端到服務(wù)端的傳輸延遲,實際應(yīng)用中會發(fā)送requests到多個server來減小單個服務(wù)的誤差Rust in Action筆記 第九章 時間管理,Rust in Action,rust,筆記,開發(fā)語言

文章來源地址http://www.zghlxwxcb.cn/news/detail-525273.html

到了這里,關(guān)于Rust in Action筆記 第九章 時間管理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【Rust】Rust學習 第九章錯誤處理

    【Rust】Rust學習 第九章錯誤處理

    Rust 將錯誤組合成兩個主要類別: 可恢復錯誤 ( recoverable )和? 不可恢復錯誤 ( unrecoverable )。可恢復錯誤通常代表向用戶報告錯誤和重試操作是合理的情況,比如未找到文件。不可恢復錯誤通常是 bug 的同義詞,比如嘗試訪問超過數(shù)組結(jié)尾的位置。 大部分語言并不區(qū)分這

    2024年02月13日
    瀏覽(18)
  • 《LKD3粗讀筆記》(11)定時器和時間管理

    《LKD3粗讀筆記》(11)定時器和時間管理

    硬件為內(nèi)核提供了一個 系統(tǒng)定時器 用以計算流逝的時間,該時鐘在內(nèi)核中可看成是一個 電子時間資源 ,比如數(shù)字時鐘或處理器頻率等。 系統(tǒng)定時器 以某種頻率 自行觸發(fā) (常被稱為擊中(hitting)或者射中(popping)) 時鐘中斷 ,該頻率可以通過編程預定,稱作 節(jié)拍率 (

    2024年02月03日
    瀏覽(16)
  • python學習筆記:第九章異常

    python使用異常對象來表示異常狀態(tài),并在遇到錯誤時引發(fā)異常。異常對象未被處理,程序?qū)⒔K止并顯示一條錯誤信息。 我們可以通過各種方法引發(fā)和捕獲錯誤,并采取對應(yīng)措施。 自主地引發(fā)異常 我們通過預測異常可能發(fā)生的位置,通過raise語句主動拋出異常,用except語句來

    2024年02月15日
    瀏覽(22)
  • 《Flink學習筆記》——第九章 多流轉(zhuǎn)換

    《Flink學習筆記》——第九章 多流轉(zhuǎn)換

    無論是基本的簡單轉(zhuǎn)換和聚合,還是基于窗口的計算,我們都是針對一條流上的數(shù)據(jù)進行處理的。而在實際應(yīng)用中,可能需要將不同來源的數(shù)據(jù)連接合并在一起處理,也有可能需要將一條流拆分開,所以經(jīng)常會有對多條流進行處理的場景 簡單劃分(兩大類): 分流——把一

    2024年02月11日
    瀏覽(33)
  • Go語言精修(尚硅谷筆記)第九章

    Go語言精修(尚硅谷筆記)第九章

    map是key-value數(shù)據(jù)結(jié)構(gòu),又稱為字段或者關(guān)聯(lián)數(shù)組。類似其它編程語言的集合,在編程中是經(jīng)常使用到 基本語法 key可以是什么類型 golang中的map,的 key 可以是很多種類型,比如 bool, 數(shù)字,string, 指針,channel, 還可以是只包含前面幾個類型的 接口, 結(jié)構(gòu)體, 數(shù)組 通常 key 為 int 、

    2023年04月08日
    瀏覽(17)
  • 《Opencv3編程入門》學習筆記—第九章

    《Opencv3編程入門》學習筆記—第九章

    記錄一下在學習《Opencv3編程入門》這本書時遇到的問題或重要的知識點。 一、圖像直方圖概述 1、作用: ??在每個興趣點設(shè)置一個有相近特征的直方圖所構(gòu)成的標簽,通過標記幀與幀之間顯著的邊緣、顏色、角度等特征的統(tǒng)計變化,來檢測視頻中場景的變化。 2、概念:

    2024年02月11日
    瀏覽(20)
  • 紅寶石閱讀筆記--第九章 代理與反射

    1. 代理中的 this 這是因為 User 實例一開始使用目標對象作為 WeakMap 的鍵,代理對象卻嘗試從自身取得這個實 例。要解決這個問題,就需要重新配置代理,把代理 User 實例改為代理 User 類本身。之后再創(chuàng)建代 理的實例就會以代理實例作為 WeakMap 的鍵了: 剛開始自己不懂什么意

    2024年02月11日
    瀏覽(22)
  • go 筆記 第九章 結(jié)構(gòu)體 struct 聲明和使用

    package main import “fmt” type qm struct { name string age int hobby []string home } type home struct { address string } // 給結(jié)構(gòu)體聲明方法 func (q qm) song(name string) (ret string) { ret = “驚雷” fmt.Printf(“%v—%v–%v”, q.name, name, q.age) fmt.Println() return ret } func (h home) open() { fmt.Println(“open”) } func main() { v

    2024年02月16日
    瀏覽(22)
  • 【Unity每日一記】時間Time類-做時間管理大師

    【Unity每日一記】時間Time類-做時間管理大師

    ?????個人主頁 :@元宇宙-秩沅 ????? hallo 歡迎 點贊?? 收藏? 留言?? 加關(guān)注?! ????? 本文由 秩沅 原創(chuàng) ????? 收錄于專欄 : unity每日一記 ?【Unityc#專題篇】之c#系統(tǒng)化大禮包】 ?【unity數(shù)據(jù)持久化】數(shù)據(jù)管理類_PlayerPrfs ?【unity本站最全系列】unity常用API大全

    2024年02月16日
    瀏覽(18)
  • 華為HCIA課堂筆記第九章 STP生成樹

    華為HCIA課堂筆記第九章 STP生成樹

    選舉一個根橋(根交換機) 每一個非根橋上選舉一個根端口(去往根橋最近的端口) 在每一個鏈路上選舉一個指定端口(向樹的下游轉(zhuǎn)發(fā)數(shù)據(jù)) 阻塞剩余的非根端口,非指定端口。 根橋:生成樹的樹根 通過比較橋ID(稱為BID),選擇所有的相連二層設(shè)備中的橋 ID,越小越優(yōu)

    2024年01月22日
    瀏覽(54)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包