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"