【问题标题】:How to make execution pause, sleep, wait for X seconds in R?如何在 R 中使执行暂停、睡眠、等待 X 秒?
【发布时间】:2010-11-13 13:44:43
【问题描述】:

如何将 R 脚本暂停指定的秒数或毫秒数?在许多语言中,有一个sleep 函数,但?sleep 引用了一个数据集。而且?pause?wait 不存在。

预期目的是用于自定时动画。所需的解决方案无需用户输入即可工作。

【问题讨论】:

  • @Ricardo,我们与 Joshua 和其他人就这个问题进行了全面的讨论,我们最终同意“暂停”和“睡眠”都应该在标题中。最终的标题是妥协的结果。而你只是介入,没有任何争论为什么你的标题更好回滚到以前的版本?在标题中添加“sleep”会使问题更容易找到,因为“sleep”有多种语言,用户很可能会搜索它。当前标题包含大量单词 balast 并且缺少重要的关键字。 您回滚的目的是什么?
  • Google "r sleep" 找不到,尝试修复。

标签: r animation statistics


【解决方案1】:

如果 CPU 使用率很高,Sys.sleep() 将不起作用;就像其他关键的高优先级进程正在运行(并行)一样。

这段代码对我有用。这里我以 2.5 秒的间隔打印 1 到 1000。

for (i in 1:1000)
{
  print(i)
  date_time<-Sys.time()
  while((as.numeric(Sys.time()) - as.numeric(date_time))<2.5){} #dummy while loop
}

【讨论】:

  • Sys.sleep() 函数在我的用例中不起作用,这是我能够管理产生必要延迟的唯一方法。
【解决方案2】:

help(Sys.sleep)

例如,来自?Sys.sleep

testit <- function(x)
{
    p1 <- proc.time()
    Sys.sleep(x)
    proc.time() - p1 # The cpu usage should be negligible
}
testit(3.7)

产量

> testit(3.7)
   user  system elapsed 
  0.000   0.000   3.704 

【讨论】:

  • 这是该页面的示例代码。暂停 3.7 秒 testit
  • 顺便说一下,help.search("sleep") 会指引你那样做。
  • 为什么你不能只做Sys.sleep(10)
  • 我想你误解了我的例子和插图,它也测量并证明了正是这一点,
猜你喜欢
  • 2018-11-16
  • 1970-01-01
  • 2019-07-18
  • 2016-09-03
  • 2011-12-12
  • 2022-11-23
  • 2010-11-05
  • 1970-01-01
相关资源
最近更新 更多