亚洲精品中文免费|亚洲日韩中文字幕制服|久久精品亚洲免费|一本之道久久免费

<optgroup id="cczp1"><ruby id="cczp1"><cite id="cczp1"></cite></ruby></optgroup>
  • <acronym id="cczp1"></acronym>
    <acronym id="cczp1"><option id="cczp1"><ol id="cczp1"></ol></option></acronym>
    <delect id="cczp1"></delect>
    <center id="cczp1"></center>
    <delect id="cczp1"></delect><em id="cczp1"><button id="cczp1"><blockquote id="cczp1"></blockquote></button></em>
    1. <optgroup id="cczp1"><td id="cczp1"><dfn id="cczp1"></dfn></td></optgroup>

      Linux時間和日期

      1 兩種時間

      linux提供了兩種時間:

      (1)日歷時間。該值是自 協(xié)調(diào)世界時(Coordinated Universal Time, UTC)1970年1月1日00::00::00這個特定時間以來所經(jīng)過的秒數(shù)累計值。(早期稱UTC為格林尼治標(biāo)準(zhǔn)時間)

      系統(tǒng)基本數(shù)據(jù)類型time_t用于保存這種時間值。

      (2)進(jìn)程時間。也被成為CPU時間,用以度量進(jìn)程使用的中央處理器資源。進(jìn)程時間以時鐘滴答計算。調(diào)用sysconf函數(shù)可以獲得每秒得時間滴答數(shù)。

      系統(tǒng)基本數(shù)據(jù)類型clock_t用于保存這種時間值。

      為了度量一個進(jìn)程的執(zhí)行時間,linux系統(tǒng)維護(hù)了3個進(jìn)程時間值:

      (1)時鐘時間; //進(jìn)程運(yùn)行的時間總量

      (2)用戶CPU時間; //執(zhí)行用戶指令所用時間(用戶態(tài)時間)

      (3)系統(tǒng)CPU時間; //執(zhí)行內(nèi)核程序所用時間(內(nèi)核態(tài)時間)

      用戶cpu時間和系統(tǒng)cpu時間總和稱為cpu時間。

      執(zhí)行time命令,可以取得任一進(jìn)程的時鐘時間、用戶時間和系統(tǒng)時間。

      2 獲取時間相關(guān)函數(shù)

      2.1 獲取秒級時間函數(shù)

      #include time_t time(time_t *timer);//通過函數(shù)返回值或者timer 變量均可以獲取到當(dāng)前時間

      time_t實(shí)際上是一個長整型,表示UTC時間(1970年1月1日0時0分0秒,Linux系統(tǒng)的Epoch時間)到當(dāng)前系統(tǒng)時間的秒數(shù)級時間差

      2.2 獲取微秒級時間函數(shù)

      #include #include struct timeval { time_t tv_sec; /* seconds */ suseconds_t tv_usec; /* microseconds */};struct timezone{ int tz_minuteswest; /*miniutes west of Greenwich*/ int tz_dsttime; /*type of DST correction*/};//函數(shù)執(zhí)行成功返回0,失敗返回-1. 其中timezone 是時區(qū)相關(guān)的結(jié)構(gòu)體int gettimeofday(struct timeval *tv, struct timezone *tz);//用來設(shè)置指定的時間和時區(qū)信息int settimeofday(const struct timeval *tv, const struct timezone *gz);

      2.3 獲取納秒級時間函數(shù)

      #include /*其中clk_id 用來指定對應(yīng)的時鐘類型,不同的類型可以用來獲取不同的時間值,具體有四種:CLOCK_REALTIME: 系統(tǒng)實(shí)時時間,從UTC開始計時,若時間被用戶更改計數(shù)時間相應(yīng)改變;CLOCK_MONOTONIC:從系統(tǒng)啟動開始計時,即使用戶更改時間也沒有影響;CLOCK_PROCESS_CPUTIME_ID:本進(jìn)程開始到執(zhí)行到當(dāng)前程序系統(tǒng)CPU花費(fèi)的時間;CLOCK_THREAD_CPUTIME_ID:本線程開始到執(zhí)行到當(dāng)前程序系統(tǒng)CPU花費(fèi)的時間*/struct timespec{ time_t tv_sec; //s long tv_nsec; //ns};int clock_gettime(clockid_t clk_id, struct timespec* tp);

      當(dāng)時鐘類型設(shè)置為CLOCK_REALTIME時,clock_gettime函數(shù)提供了與time函數(shù)類似的功能,不過在系統(tǒng)支持高精度值得情況下,clock_gettime可能比time函數(shù)得到更高精度的時間值。

      舉例:若想獲取從系統(tǒng)啟動開始計時,即使用戶更改時間也沒有影響的時間,單位微秒,如下:

      int64_t get_time_point_monotonic() { struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts); return ts.tv_sec * 1000000L + ts.tv_nsec / 1000;}

      3 轉(zhuǎn)換時間相關(guān)函數(shù)

      3.1 將time_t轉(zhuǎn)換為結(jié)構(gòu)體struct tm

      struct tm包含年月日等非常詳細(xì)的域,如下所示:

      #include struct tm{ int tm_sec; //秒 int tm_min; //分 int tm_hour; //時;取值區(qū)間為[0, 23] int tm_mday; //日;取值區(qū)間為[1, 31] int tm_mon; //月份;取值區(qū)間為[0, 11]; 0表示1月份依次遞增到12月份 int tm_year; //年份;其值為1900年至今年數(shù) int tm_wday; //星期;0代表星期天,1代表星期1,以此類推 int tm_yday; //日期;0代表1月1日 int tm_isdst; //夏令時標(biāo)識符;使用夏令時為正,不使用t為0,不確定時為負(fù)*/};

      將time_t轉(zhuǎn)換成struct tm結(jié)構(gòu)體常用的函數(shù)如下:

      #include struct tm* gmtime(const time_t* timep);struct tm* localtime(const time_t* timep);

      gmtime()轉(zhuǎn)換的結(jié)果是UTC對應(yīng)的信息,而localtime() 函數(shù)轉(zhuǎn)換的結(jié)果是當(dāng)前所在時區(qū)的信息。

      3.2 將time_t轉(zhuǎn)換成我們習(xí)慣性使用的時間和日期字符串

      對應(yīng)轉(zhuǎn)換函數(shù)如下:

      #include char* ctime(time_t* timep);

      3.3 將struct tm 轉(zhuǎn)換成 time_t對應(yīng)函數(shù)如下:

      #include time_t mktime(struct tm *p_tm);

      3.4 將struct tm轉(zhuǎn)換成我們習(xí)慣性使用的時間和日期字符串對應(yīng)函數(shù)如下:

      #include char *asctime(const struct tm *p_tm); //習(xí)慣性字符串 Thu Dec 9 07:13:35 2021

      3.5 將時間字符串轉(zhuǎn)換成 struct tm格式

      /**************************************** description: 將struct tm 按照指定的format格式轉(zhuǎn)化成字符串** parameter:** *s : 需要被轉(zhuǎn)換的時間字符串** *format:時間字符串的格式** *tm:轉(zhuǎn)換后的tm時間**************************************/char *strptime(const char *s, const char *format, struct tm *tm);

      3.6 將struct tm 按照指定的format格式轉(zhuǎn)化成字符串

      /**************************************** description: 將struct tm 按照指定的format格式轉(zhuǎn)化成字符串** parameter:** *s : 生成的時間字符串** max: 字符串最大字符數(shù)(即最大可生成的字符數(shù)量)** *format:生成的字符串格式** *tm:需要被轉(zhuǎn)換的tm時間**************************************/size_t strftime(char *s, size_t max, const char *format,const struct tm *tm);

      鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
      用戶投稿
      上一篇 2022年6月14日 12:26
      下一篇 2022年6月14日 12:26

      相關(guān)推薦

      • ios手游模擬器(手游模擬器ios)

        本文主要講的是ios手游模擬器,以及和手游模擬器ios相關(guān)的知識,如果覺得本文對您有所幫助,不要忘了將本文分享給朋友。 哪個iOS模擬器能多開手游賬號?可以推薦個好用的模擬器給我嗎…

        2022年11月27日
      • 短視頻策劃內(nèi)容的3個要點(diǎn)(短視頻策劃內(nèi)容怎么做)

        短視頻在制作時,內(nèi)容框架非常重要。如果直奔主題,然后結(jié)束,聚卓告訴你,這樣的短視頻已經(jīng)過時了?,F(xiàn)在的短視頻需要框架的,但不是任何框架,它需要一種易于理解和消化的框架。而且,現(xiàn)在大多…

        2022年11月27日
      • 美團(tuán)第三季度實(shí)現(xiàn)營收626億元,即時配送訂單量增至50億筆

        新京報訊(記者秦勝南)11月25日,美團(tuán)發(fā)布業(yè)績公告顯示,第三季度營收為626億元,較去年同比增長28.2%,凈利潤為12.2億元。第三季度,美團(tuán)即時配送訂單數(shù)增長至50億筆。截至…

        2022年11月27日
      • 存儲過程語法(sql server存儲過程語法)

        今天小編給各位分享存儲過程語法的知識,其中也會對sql server存儲過程語法進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲過程基本語法…

        2022年11月26日
      • 個人怎么做抖音帶貨(個人做抖音帶貨能賺錢嗎)

        抖音如今是大家很熟悉的短視頻平臺,不過現(xiàn)在的抖音卻不只是短視頻那么簡單,它的功能非常豐富,其中一個就是可以帶貨,相信很多小伙伴都有在抖音上買過東西,抖音如今的變現(xiàn)能力也是不容小覷的…

        2022年11月25日
      • 5+3疫情防控從哪天開始算(遼寧疫情防控最新政策)

        最近有關(guān)國內(nèi)各地的疫情大家也都有在持續(xù)關(guān)注,目前國內(nèi)各地疫情隔離時間也根據(jù)二十條防控措施有了新的調(diào)整。那么,5+3疫情防控從哪天開始算?對于密接的5+3隔離時間計算大家還是比較關(guān)心…

        2022年11月25日
      • 藍(lán)碼怎么變綠碼需要幾天(藍(lán)碼怎么變綠碼需要幾天)

        大家都知道健康碼的顏色有紅碼、綠碼、黃碼,近日湖南健康碼上線“藍(lán)碼”,不少小伙伴發(fā)現(xiàn)自己健康碼變藍(lán)了,都想趕緊恢復(fù)綠碼,那么藍(lán)碼怎么變綠碼需要幾天?下面小編為大家?guī)硭{(lán)碼變綠碼需要…

        2022年11月25日
      • 拼多多百億補(bǔ)貼預(yù)售一般多久發(fā)貨(拼多多百億補(bǔ)貼預(yù)售)

        拼多多里面有很多優(yōu)惠活動,其中百億補(bǔ)貼活動非?;鸨?,一些里面的東西價格比別的平臺便宜,質(zhì)量也有保障,還有預(yù)售的活動,那么拼多多百億補(bǔ)貼預(yù)售一般多久發(fā)貨?下面小編為大家?guī)砥炊喽喟賰|…

        2022年11月25日
      • 北京疫情多久能解除封控(北京疫情還要多久結(jié)束)

        最近一段時間北京疫情形勢備受關(guān)注,馬上就要到年底了,不少人想要去北京辦事,。都非常關(guān)注當(dāng)?shù)匾咔橄嚓P(guān)政策,那么 北京疫情多久能解除封控?北京疫情什么時候恢復(fù)正常生活?下面小編為大家?guī)А?/p>

        2022年11月25日
      • 小紅書平臺的一些機(jī)制及玩法詳解(小紅書玩法有哪些)

        關(guān)于小紅書 一:小紅書平臺的一些機(jī)制 1. 筆記內(nèi)容的CES評分機(jī)制 2. 筆記流量入口與長尾效應(yīng) 二:小紅書優(yōu)質(zhì)筆記的特點(diǎn)(分維度、類型分析) 1.筆記的本身架構(gòu)組成 維度 2.…

        2022年11月25日

      聯(lián)系我們

      聯(lián)系郵箱:admin#wlmqw.com
      工作時間:周一至周五,10:30-18:30,節(jié)假日休息