Go獲取兩個(gè)時(shí)間點(diǎn)時(shí)間差的具體實(shí)現(xiàn)
獲取當(dāng)前時(shí)間及其秒、毫秒、納秒數(shù)
now := time.Now() //獲取當(dāng)前時(shí)間 ==>2019-08-21 11:30:51.2470317 +0800 CST m=+0.004501101 fmt.Printf("時(shí)間戳(秒):%v;\n", time.Now().Unix()) //10位 fmt.Printf("時(shí)間戳(納秒):%v;\n",time.Now().UnixNano()) //19位 fmt.Printf("時(shí)間戳(毫秒):%v;\n",time.Now().UnixNano() / 1e6) //或者秒*1000也可 fmt.Printf("時(shí)間戳(納秒-->秒):%v;\n",time.Now().UnixNano() / 1e9)
兩個(gè)時(shí)間作差,第一個(gè)時(shí)間是t1,第二個(gè)時(shí)間是t2,那么時(shí)間差是t2.Sub(t1)
具體顯示時(shí)間可以通過Format(time.ANSIC)打印時(shí)間格式,以及In接口+Location設(shè)置時(shí)區(qū)
例如:
TimeLocation, err := time.LoadLocation("Asia/Shanghai") //err處理 t1.Now().In(TimeLocation).Format(time.ANSIC)
獲取兩個(gè)時(shí)間點(diǎn)時(shí)間差代碼
package main import ( ? ? "fmt" ? ? "time" ) func main() { ? ? temp := 0 ? ? t1 := time.Now() ? ? for i := 0; i < 100000; i++ { ? ? ? ? for j := 0; j < 10000; j++ { ? ? ? ? ? ? temp++ ? ? ? ? } ? ? } ? ? fmt.Println(temp) ? ? t2 := time.Now() ? ? fmt.Println(t2.Sub(t1)) }
獲取指定時(shí)間前的時(shí)間
// 獲取50秒前的時(shí)間,方式1 st,_ := time.ParseDuration("-50s") fmt.Println("50秒前的時(shí)間:",time.Now().Add(st)) // 獲取1分鐘前的時(shí)間,n秒前則是time.Second * -n,方式2 t := time.Now().Add(time.Minute * -1) fmt.Println("一分鐘前的時(shí)間:",t) //獲取1小時(shí)前的時(shí)間 sth,_ := time.ParseDuration("-1h") fmt.Println("1小時(shí)前的時(shí)間:",time.Now().Add(sth)) // 獲取2天前的時(shí)間 oldTime := time.Now().AddDate(0, 0, -2) //獲取兩個(gè)月前的時(shí)間 oldTime := time.Now().AddDate(0, -2, 0)
獲取指定時(shí)間后的時(shí)間
// 獲取50秒后的時(shí)間,方式1 st,_ := time.ParseDuration("50s") fmt.Println("50秒之后的時(shí)間:",time.Now().Add(st)) // 獲取1分鐘后的時(shí)間,n秒前則是time.Second * n,方式2 t := time.Now().Add(time.Minute * 1) fmt.Println("一分鐘后的時(shí)間:",t) //獲取1小時(shí)后的時(shí)間 sth,_ := time.ParseDuration("1h") fmt.Println("1小時(shí)之后的時(shí)間:",time.Now().Add(sth)) // 獲取當(dāng)前時(shí)間2天后的時(shí)間 newTime := time.Now().AddDate(0, 0, 2) //newTime 的結(jié)果為時(shí)間time類型 //獲取當(dāng)前時(shí)間2月后的時(shí)間 newTime := time.Now().AddDate(0, 2, 0)
到此這篇關(guān)于Go獲取兩個(gè)時(shí)間點(diǎn)時(shí)間差的具體實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Go獲取時(shí)間差內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
教你一分鐘配置好Go語言開發(fā)環(huán)境(多種操作系統(tǒng))
在這篇文章中,我們從頭到尾一步步指導(dǎo)你配置Golang開發(fā)環(huán)境,并編寫你的第一個(gè)"Hello,?World!"程序,我們?cè)敿?xì)解釋了在多種操作系統(tǒng)(包括Windows、Linux和macOS)下的安裝過程、環(huán)境變量設(shè)置以及如何驗(yàn)證安裝是否成功2023-09-09golang實(shí)現(xiàn)簡(jiǎn)單的tcp數(shù)據(jù)傳輸
這篇文章主要為大家介紹了golang實(shí)現(xiàn)簡(jiǎn)單的tcp數(shù)據(jù)傳輸,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12使用go的interface案例實(shí)現(xiàn)多態(tài)范式操作
這篇文章主要介紹了使用go的interface案例實(shí)現(xiàn)多態(tài)范式操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-12-12golang默認(rèn)Logger日志庫在項(xiàng)目中使用Zap日志庫
這篇文章主要為大家介紹了golang默認(rèn)Logger日志庫在項(xiàng)目中使用Zap日志庫,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04golang通過mysql語句實(shí)現(xiàn)分頁查詢
這篇文章主要介紹了golang通過mysql語句實(shí)現(xiàn)分頁查詢,文章內(nèi)容介紹詳細(xì),具有一定的參考價(jià)值,需要的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助2022-03-03

詳解Golang如何優(yōu)雅的終止一個(gè)服務(wù)