Maison >développement back-end >Golang >Exécuter un planificateur horaire à l'aide de gocron
L'éditeur de PHP Apple vous présente gocron, qui est un puissant planificateur qui vous permet d'exécuter des tâches toutes les heures. Il s'agit d'un outil simple et facile à utiliser qui peut mettre en œuvre la planification de tâches planifiées sans écrire de code fastidieux. En utilisant gocron, vous pouvez facilement configurer des tâches à exécuter toutes les heures, qu'il s'agisse de sauvegarde de données, de nettoyage de journaux ou d'autres tâches planifiées importantes, elles peuvent être exécutées de manière précise et fiable. gocron fournit également une interface graphique conviviale, vous permettant de gérer et de surveiller facilement vos tâches planifiées. Que vous soyez un développeur individuel ou un administrateur d'entreprise, gocron est un outil indispensable pour vous.
Comment exécuter une fonction à des minutes spécifiques toutes les heures en utilisant gocron ?
J'ai essayé deux codes, l'un est sale et l'autre ne fonctionne pas.
Code sale :
loc, _ := time.loadlocation("asia/seoul") s := gocron.newscheduler(loc) _, err = s.every(1).day().at("0:30").do(schduler) _, err = s.every(1).day().at("1:30").do(schduler) _, err = s.every(1).day().at("2:30").do(schduler) _, err = s.every(1).day().at("3:30").do(schduler) _, err = s.every(1).day().at("4:30").do(schduler) _, err = s.every(1).day().at("5:30").do(schduler) _, err = s.every(1).day().at("6:30").do(schduler) _, err = s.every(1).day().at("7:30").do(schduler) _, err = s.every(1).day().at("8:30").do(schduler) _, err = s.every(1).day().at("9:30").do(schduler) _, err = s.every(1).day().at("10:30").do(schduler) _, err = s.every(1).day().at("11:30").do(schduler) _, err = s.every(1).day().at("12:30").do(schduler) _, err = s.every(1).day().at("13:30").do(schduler) _, err = s.every(1).day().at("14:30").do(schduler) _, err = s.every(1).day().at("15:30").do(schduler) _, err = s.every(1).day().at("16:30").do(schduler) _, err = s.every(1).day().at("17:30").do(schduler) _, err = s.every(1).day().at("18:30").do(schduler) _, err = s.every(1).day().at("19:30").do(schduler) _, err = s.every(1).day().at("20:30").do(schduler) _, err = s.every(1).day().at("21:30").do(schduler) _, err = s.every(1).day().at("22:30").do(schduler) _, err = s.every(1).day().at("23:30").do(schduler) if err != nil { fmt.println("error scheduling task:", err) return } s.startasync()
Le code ne fonctionne pas :
_, err = s.Every(1).Hour().Minute(30).Do(runHourlyScheduler)
Utilisez .every(1).hour()
,然后将其与 .startat()
链接,并使用任何将分钟设置为 30
的 time.time
objet pour remplir les paramètres.
De cette façon, le planificateur fonctionnera quelques minutes toutes les heures 30
.
loc, _ := time.LoadLocation("Asia/Seoul") s := gocron.NewScheduler(loc) // construct start at in minute 30 now := time.Now() nextSchedule := time.Date(now.Year(), now.Month(), now.Day(), now.Hour(), 30, 0, 0, now.Location()) _, err := s.Every(1).Hour().StartAt(nextSchedule).Do(schduler) if err != nil { fmt.Println("Error scheduling task:", err) return } s.StartAsync()
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!