4

我有一个 r 函数,我想在每个预定义的时间间隔(例如每 5 分钟后)自动运行(调度)它是否有可能,如果是,那么如何完成。

4

1 回答 1

14

理想情况下,您应该为此使用系统调度程序:Unix 系统上的 cron 或 Windows 系统上的 Scheduled Tasks。

可能有一些要求意味着您不能为函数的每次调用生成一个新进程。如果是这样,则使用无限循环并调用 Sys.sleep() 以等待下一次调用到期。

repeat {
    startTime <- Sys.time()
    runFunction()
    sleepTime <- startTime + 5*60 - Sys.time()
    if (sleepTime > 0)
        Sys.sleep(sleepTime)
}
于 2012-04-09T07:57:53.720 回答