Untuk melaksanakan kod pada tengah hari setiap hari dalam Go, anda boleh menggunakan pelbagai kaedah, seperti pemasa.AfterFunc(), masa. Tick(), time.Sleep(), atau time.Ticker.
Mengira Masa Mula Kelewatan:
Mulakan dengan mengira selang masa dari program permulaan sehingga tengah hari berikutnya dengan menggunakan:
t := time.Now() n := time.Date(t.Year(), t.Month(), t.Day(), 12, 0, 0, 0, t.Location()) d := n.Sub(t) if d < 0 { n = n.Add(24 * time.Hour) d = n.Sub(t) }
Menggunakan masa.Sleep:
Tunggu selang masa awal menggunakan masa.Tidur:
time.Sleep(d)
Persediaan untuk Tugas Tengah Hari:
Seterusnya, tentukan fungsi untuk tugas tengah hari:
func noonTask() { fmt.Println(time.Now()) fmt.Println("do some job.") }
Mula gelung berterusan yang memanggil noonTask setiap 24 jam:
d = 24 * time.Hour for { time.Sleep(d) noonTask() }
Menggunakan pemasa.AfterFunc:
Gunakan pemasa.AfterFunc untuk menjadualkan tugas tengah hari pertama dan tugasan seterusnya:
timer.AfterFunc(duration(), noonTask)
Menggunakan masa.Ticker:
Gunakan masa.Ticker untuk mencipta saluran yang menghantar isyarat setiap 24 jam:
ticker = time.NewTicker(24 * time.Hour) for { <-ticker.C noonTask() }
Perpustakaan Alternatif:
Pertimbangkan untuk menggunakan perpustakaan luaran seperti gocron, yang menyediakan cara yang mudah untuk menjadualkan tugas pada tempat tertentu kali.
Ingat, pendekatan yang ideal bergantung pada keperluan khusus anda dan seni bina aplikasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Kod pada Tengah Hari Harian di Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!