参考:https://www.jianshu.com/p/797778c7703e

    011. 后台运行R 脚本 - 图1

    我们可以将一些如安装包等费时的命令丢入后台,不占用我们执行其他的代码。

    写好了脚本,选定需要执行的脚本,直接选择start:

    011. 后台运行R 脚本 - 图2

    通常来说,脚本中的代码并不会读取环境中的变量:

    1. a <- 3*x
    2. Error in eval(statements[[idx]], envir = sourceEnv) :
    3. object 'x' not found
    4. Calls: sourceWithProgress -> eval -> eval
    5. Execution halted

    因此需要选择选项Run job with copy of global environment。

    如果我们还想获得脚本的返回结果,可以使用选项 To results object in global environment:

    011. 后台运行R 脚本 - 图3

    1. "Copy job results" 里有三个选项:
    2. Don't copy: 不复制到当前全局变量
    3. To global environment: 变量直接复制到当前全局变量,
    4. To results object in global environment: 变量会存放在environment 对象中

    这样脚本中赋值的变量即便和环境中已有的变量名发生了冲突,也不会被覆盖,变量会存放在environment 对象中:

    1. > test_results$x
    2. [1] 3