Golang - 如何在特定时间执行函数

我需要在一天中的特定时间运行一个函数(例如 0010、0610、1210、1810)。我目前的方法使用自动收报机for _ = range time.Tick(21600 * time.Second),我以这些时间间隔之一(例如 1210)手动启动程序。这显然是次优的。

对此的最佳解决方案是什么?我想过每 60 秒运行一次自动收报机,然后检查时间是否与其中一个间隔相匹配,但这似乎不太优雅。


繁花不似锦
浏览 433回答 1
1回答

ABOUTYOU

您真正想要的是调度程序,因此您的选择是:将您的程序限制为您希望在每个时间间隔完成的工作,但使用现有的调度程序进行调度 - 一个简单的示例是使用 cron 作业(或对于 Windows,任务调度程序)根据所需的时间表启动您的程序将您的程序本身变成一个调度程序,它按计划正确调用所需的功能。理想情况下,您的程序需要作为守护程序运行(服务,在 Windows 上),或者启动一次并以某种方式一直运行
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go