r - setTimeLimit 如何在 R 中工作?

标签 r timer

我正在努力掌握setTimeLimit()在 R 中,我的经验导致了几个相关的问题,所以也许根本问题是:这到底是如何工作的? (我也一直在查看来自 evalWithTimeout()R.utils,它可能更适合我的目的,但它是基于此功能构建的。)

以下是我试图弄清楚的关键问题:

  • 它如何监控耗时? IE。它似乎被插入到流量控制中,那么它是如何做到的呢?能够拥有“后台”进程很酷,可用于报告状态、检查点等。
  • 我可以确定距离触发还剩多少时间吗?我意识到我可以将它包装起来并存储在某个地方,大约在调用点(即 proc.time() 的输出)消耗的 CPU 时间。但是,这个函数已经将这些存储在某个地方,我想知道在哪里,或者至少如何确定剩余时间。
  • 如果 R 控制台空闲,它可以做一些有用的事情吗?能够监控elapsed.time()cpu.time()非常有用。我希望能够监视 R 何时空闲,但从修补看来,它需要提交或完成命令。此外,仅输出错误不会触发后续操作。 (也许我需要更多关注 evalWithTimeout 。)
  • 帮助信息说可以用C或者Fortran,但是没有给出例子。关于如何做到这一点的任何建议?
  • 最佳答案

    要显示 setTimeLimit 在 C 函数调用期间不起作用:

    rfunction <- function(){
        repeat{
            x <- rnorm(100);
        }
    }
    
    cfunction <- function(){
        x <- eigen(matrix(rnorm(1e6), 1e3));
    }
    
    setTimeLimit(3);
    system.time(try(rfunction(), silent=TRUE))
    system.time(try(cfunction(), silent=TRUE))
    

    关于r - setTimeLimit 如何在 R 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7903497/

    相关文章:

    r - 不均匀的颜色条,R ggplot2scale_color_gradient

    r - 将 ifelse 函数应用于列表上的数据框

    r - 使用 r 中的核密度估计生成样本

    java - 暂停和恢复计时器而不重置计时器

    javascript - 带有动画轮子的计时器和屏幕锁定时出现的错误

    r - 在 ggplot (R) 中分离 geom_point 和 geom_path 绘图层

    r - 使用 terra 在多面板栅格上绘制 shapefile

    带逗号的 JavaScript 计时器

    javascript - 如何在 native react 中为按钮设置计时器?

    c# - 等待按键(或)N 秒过期