R 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 ответ

Решение

Следующие работы для меня:

 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"
Другие вопросы по тегам