r_bg {callr} | R Documentation |
Starts evaluating an R function call in a background R process, and returns immediately.
r_bg(func, args = list(), libpath = .libPaths(), repos = c(getOption("repos"), c(CRAN = "https://cloud.r-project.org")), stdout = "|", stderr = "|", error = getOption("callr.error", "error"), cmdargs = c("--no-site-file", "--no-environ", "--slave", "--no-save", "--no-restore"), system_profile = FALSE, user_profile = FALSE, env = rcmd_safe_env(), supervise = FALSE)
func |
Function object to call in the new R process.
The function should be self-contained and only refer to
other functions and use variables explicitly from other packages
using the r(.libPaths) does not work, because r(function() .libPaths()) works just fine. |
args |
Arguments to pass to the function. Must be a list. |
libpath |
The library path. |
repos |
The repos option. If |
stdout |
The name of the file the standard output of
the child R process will be written to.
If the child process runs with the |
stderr |
The name of the file the standard error of
the child R process will be written to.
In particular |
error |
What to do if the remote process throws an error. See details below. |
cmdargs |
Command line arguments to pass to the R process.
Note that |
system_profile |
Whether to use the system profile file. |
user_profile |
Whether to use the user's profile file. |
env |
Environment variables to set for the child process. |
supervise |
Whether to register the process with a supervisor. If |
An r_process
object, which inherits from process,
so all process
methods can be called on it, and in addition it also
has a get_result()
method to collect the result.
## Not run: rx <- r_bg(function() 1 + 2) # wait until it is done rx$wait() rx$is_alive() rx$get_result() ## End(Not run)