gpt4 book ai didi

r - setTimeLimit 如何在 R 中工作?

转载 作者:行者123 更新时间:2023-12-04 02:19:37 24 4
gpt4 key购买 nike

我正在努力掌握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/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com