Rumah >pembangunan bahagian belakang >Golang >Mengapakah `time.Now()` Go Mengembalikan '2009-11-10 23:00:00 0000 UTC' pada Windows?
Go Time.Now() Menghasilkan Masa Tidak Konsisten pada Windows
Dalam bahasa pengaturcaraan Go, fungsi time.Now() digunakan untuk mendapatkan semula masa semasa. Walau bagaimanapun, pengguna pada Windows 7x64 telah melaporkan mengalami anomali di mana masa dikembalikan secara konsisten ditetapkan kepada "2009-11-10 23:00:00 0000 UTC."
Tingkah laku ini tidak dimaksudkan dan telah dikenal pasti sebagai pepijat. Ia boleh timbul disebabkan oleh gabungan faktor, termasuk versi Go dan tetapan sistem tertentu.
Tarikh Lahir GoLang
Anehnya, masa tetap "2009-11- 10 23:00:00 0000 UTC" mempunyai kepentingan sebagai tarikh penubuhan GoLang. The Go Tour, tutorial interaktif untuk bahasa, selalunya dijalankan pada mesin maya dengan masa tetap ini.
Punca dan Penyelesaian
Meningkatkan ke Go versi 1.3 atau lebih baru telah didapati untuk menyelesaikan masalah tersebut. Selain itu, memulakan semula komputer selepas naik taraf disyorkan untuk memastikan penyelesaian lengkap.
Kemas kini terbaharu untuk Go Playground juga telah menangani anomali ini. Walau bagaimanapun, jika anda mengalami isu ini dengan kod anda sendiri, adalah disyorkan untuk mengesahkan bahawa anda tidak secara tidak sengaja melaksanakan Go Tour atau menggunakan mesin maya yang mempunyai masa tetap yang ditetapkan.
Kesimpulan
Sementara masa tetap "2009-11-10 23:00:00 0000 UTC" mempunyai sambungan sejarah yang menarik kepada GoLang, ia tidak sepatutnya ditemui dalam operasi biasa. Dengan mengemas kini kepada versi terkini Go dan memulakan semula sistem, anda boleh memastikan masa itu.Now() mengembalikan perwakilan tepat masa semasa pada mesin Windows anda.
Atas ialah kandungan terperinci Mengapakah `time.Now()` Go Mengembalikan '2009-11-10 23:00:00 0000 UTC' pada Windows?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!