Maison  >  Article  >  développement back-end  >  Quelles sont les fonctions liées au traitement du temps en langage Go ?

Quelles sont les fonctions liées au traitement du temps en langage Go ?

王林
王林original
2023-06-09 19:51:131201parcourir

Le langage Go est un langage de programmation émergent. Son efficacité et sa simplicité ont séduit de plus en plus de développeurs. La manipulation du temps est un besoin courant lors de l'écriture de programmes, c'est pourquoi le langage Go fournit de nombreuses fonctions liées au traitement du temps. Cet article présentera certaines fonctions de traitement du temps couramment utilisées. La fonction

  1. time.Now()

time.Now() renvoie l'heure actuelle. L'heure renvoyée par cette fonction est une valeur de type time.Time. Par exemple :

package main

import (
    "fmt"
    "time"
)

func main() {
    now := time.Now()
    fmt.Println(now)
}

Sortie : 2021-08-20 11:12:48.693123 +0800 CST m=+0.000102671

  1. time.Parse()

time.Parse() analyse une chaîne en une heure. valeur de type Heure. Les chaînes formatées doivent suivre des règles spécifiques pour indiquer l’heure que représente la chaîne à analyser. Par exemple :

package main

import (
    "fmt"
    "time"
)

func main() {
    layout := "2006-01-02 15:04:05"
    str := "2021-08-20 10:10:10"
    t, err := time.Parse(layout, str)
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(t)
    }
}

Output: 2021-08-20 10:10:10 +0000 UTC

  1. time.Unix()

time.Unix() La fonction convertit un horodatage Unix en une valeur de type time.Time. Un horodatage Unix est le nombre de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC. Par exemple :

package main

import (
    "fmt"
    "time"
)

func main() {
    unixTime := int64(1629488400)
    t := time.Unix(unixTime, 0)
    fmt.Println(t)
}

Output: 2021-08-20 10:20:00 +0000 UTC

  1. time.Duration()

time.Duration() La fonction représente l'intervalle de temps en nanosecondes. L'intervalle de temps est une valeur de type time.Duration. Par exemple :

package main

import (
    "fmt"
    "time"
)

func main() {
    t1 := time.Now()
    time.Sleep(time.Second)
    t2 := time.Now()
    duration := t2.Sub(t1)
    fmt.Println(duration)
}

Output : 1.000743896s

  1. time.After()

time.After() La fonction attend un certain temps et renvoie un canal. Le canal recevra une valeur après l'heure spécifiée. Par exemple :

package main

import (
    "fmt"
    "time"
)

func main() {
    fmt.Println("start")
    <-time.After(time.Second * 3)
    fmt.Println("end")
}

Sortie :

start
end

Ce qui précède est une introduction à certaines fonctions liées au traitement du temps dans le langage Go. Dans le développement réel, nous devons également utiliser d'autres fonctions de traitement du temps en fonction de besoins spécifiques. Lors de son utilisation, nous devons comprendre le rôle et l'utilisation de chaque fonction pour utiliser pleinement les fonctions de traitement du temps afin d'améliorer l'efficacité du code.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn