R system2并行运行不同的脚本

时间:2018-10-26 04:24:36

标签: r parallel-processing system2

我相信使用system2()是并行运行两个R脚本的不错选择。我正在尝试以下操作:

Sys.time()
system2(command = 'Sys.sleep(5)', wait = FALSE)
system2('Sys.sleep(7)', wait = FALSE)
Sys.time()

但是,它不起作用,并且我也收到此警告:

  

运行命令““ Sys.sleep(7)””的状态为127

system或system2的文档未显示任何示例,我找不到很多示例。 有没有人尝试过此选项来解决此问题?

1 个答案:

答案 0 :(得分:1)

以下对我有用:

 system("Rscript -e 'Sys.sleep(5); \"task 1\"'", wait=FALSE)
 system("Rscript -e 'Sys.sleep(7); \"task 2\"'", wait=TRUE)
 [1] "task 1"
 [1] "task 2"

带有system2()的版本(感谢HenrikB的评论):

system2("Rscript", args = c("-e", "'Sys.sleep(5); \"task 1\"'"), wait=FALSE)
system2("Rscript", args = c("-e", "'Sys.sleep(7); \"task 2\"'"), wait=TRUE)
[1] "task 1"
[1] "task 2"