相关疑难解决方法(0)

捕获R中系统调用的退出状态和输出

我已经打了一下,与system()system2()欢乐,我突然想到我能救输出或在对象退出状态.玩具示例:

X <- system("ping google.com",intern=TRUE)
Run Code Online (Sandbox Code Playgroud)

给我输出,而

X <- system2("ping", "google.com")
Run Code Online (Sandbox Code Playgroud)

给我退出状态(在这种情况下为1,谷歌不接受ping).如果我想要输出和退出状态,我必须进行2次系统调用,这看起来有点矫枉过正.如何只使用一个系统调用?

编辑:我想在控制台中同时使用两者,如果可能的话,不通过stdout="somefile.ext"system2调用中使用临时文件并随后读取它.

linux r system call

18
推荐指数
3
解决办法
9217
查看次数

setTimeLimit如何在R中工作?

我想setTimeLimit()在R中掌握并且我的经验导致了几个相关的问题,所以也许根本问题是:这是如何真正起作用的?(我一直在寻找evalWithTimeout()R.utils,以及,它可能适合我的目的稍微好一点,但它是建立在此功能).

以下是我想弄清楚的关键事项:

  1. 它如何监控经过的时间?即它似乎插入流控制,所以它是如何做到的?能够拥有"后台"流程很酷,可用于报告状态,检查点等.

  2. 我可以确定触发前剩余的时间吗?我意识到我可以将它包装起来并在某处保存在调用点(即输出proc.time())附近消耗的已用时间和CPU时间.但是,这个功能已经在某处存储了这些功能,我想知道在哪里,或者至少知道如何确定剩余的时间.

  3. 如果R控制台空闲,是否可以做一些有用的事情?能够监控elapsed.time()并且cpu.time()非常有用.我希望能够监视R何时处于空闲状态,但似乎需要修改它需要提交或完成命令.而且,仅输出错误不会触发后续操作.(也许我需要更多关注evalWithTimeout.)

  4. 帮助信息表明它可以适用于C或Fortran,但不提供示例.有关如何做到这一点的任何建议?

r timer

11
推荐指数
1
解决办法
1401
查看次数

标签 统计

r ×2

call ×1

linux ×1

system ×1

timer ×1