关于 RStudio 的问题。假设我在控制台中运行代码:
> code1()
假使,假设code1()
在控制台上不打印任何内容,但是code1()
以上需要一个小时才能完成。我想在等待的同时做点别的事code1()
。是否可以?有没有类似的函数runInBackground
我可以使用如下
> runInBackground(code1())
> code2()
替代方案是运行两个 RStudio 或编写一个使用以下命令的批处理文件Rscript
to run code1()
,但我想知道是否有一些更简单的事情可以在不离开 RStudio 控制台的情况下完成。我尝试浏览 R 的帮助文档,但没有找到任何内容(或者可能是我没有使用正确的关键字)。
The 未来套餐 https://cran.r-project.org/package=future(我是作者)提供了这个:
library("future")
plan(multisession)
future(code1())
code2()
仅供参考,如果您使用
plan(cluster, workers = c("n1", "n3", "remote.server.org"))
然后未来表达式在其中一台机器上得到解析。使用
plan(future.BatchJobs::batchjobs_slurm)
将导致它通过 Slurm 作业调度程序队列得到解决。
这个问题与以下问题密切相关在 R 中运行异步函数 https://stackoverflow.com/questions/41057849/run-asynchronous-function-in-r/42630770
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)