The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
When you create a Queue, several Worker processes are created in the background. You can then evaluate R code on those background processes while your main R process is free to do other work.
Important
The background processes are persisent R sessions. Avoid modifying their
.GlobalEnv
, otherwise your R code will produce different results based on which Worker evaluates it.
Main article: vignette('eval')
This Job will begin evaluating immediately, assuming no other Jobs are ahead of it in the Queue.
Main article: vignette('results')
Running <Job>$result
will block until the Job
finishes and the result is ready.
Main article: vignette('hooks')
Adding a callback hook to trigger when the Job is done allows the result to be handled without blocking the main R process.
Main article: vignette('stops')
If the Job’s result is no longer needed and you want to free up
compute resources, calling <Job>$stop()
will
terminate the background process. Terminated background process are
automatically replaced by new ones.
# Variables to permanently store on the Worker.
q <- Queue$new(globals = list(MY_DATA = mtcars))
# Variables to temporary add to the Worker.
vars <- list(n = 2, fields = c('mpg', 'cyl', 'disp'))
# The expression to evaluate on the Worker.
expr <- quote(head(MY_DATA, n)[,fields])
job <- q$run(expr = expr, vars = vars)
job$result
#> mpg cyl disp
#> Mazda RX4 21 6 160
#> Mazda RX4 Wag 21 6 160
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.