Maison >développement back-end >Golang >Pourquoi « time.Now() » de Go renvoie-t-il parfois le 10/11/2009 à 23:00:00 UTC ?
Exécution de la fonction time.Now() dans Go la version 1.3 sur Windows 7x64 donne systématiquement la date et l'heure du 2009-11-10 23:00:00 0000 UTC. Bien que ce phénomène soit attendu sur Go Playground (en raison de son réglage d'heure fixe), son apparition sur les machines locales peut être déroutante.
La raison derrière ce comportement inhabituel est que cette date et heure spécifiques marquent l'anniversaire du langage Go. Les créateurs de Go, Rob Pike, Robert Griesemer et Ken Thompson, ont publié le prototype public initial de Go le 10 novembre 2009.
Cet horodatage est utilisé dans le runtime Go comme un « factice " valeur pour aider au débogage. Si l'heure du système n'est pas définie correctement ou ne peut pas être déterminée, le moteur d'exécution utilise cet horodatage de secours pour garantir que le programme peut toujours fonctionner.
La mise à niveau vers Go version 1.3 et le redémarrage de votre ordinateur permettent de résoudre ce problème. pour certains utilisateurs. Cependant, il est important de noter que si l'heure du système reste indéfinie ou configurée de manière inexacte, la fonction time.Now() peut continuer à renvoyer l'horodatage « Go anniversaire ».
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!