Learn R Programming

future (version 1.69.0)

Unified Parallel and Distributed Processing in R for Everyone

Description

The purpose of this package is to provide a lightweight and unified Future API for sequential and parallel processing of R expression via futures. The simplest way to evaluate an expression in parallel is to use `x %<-% { expression }` with `plan(multisession)`. This package implements sequential, multicore, multisession, and cluster futures. With these, R expressions can be evaluated on the local machine, in parallel a set of local machines, or distributed on a mix of local and remote machines. Extensions to this package implement additional backends for processing futures via compute cluster schedulers, etc. Because of its unified API, there is no need to modify any code in order switch from sequential on the local machine to, say, distributed processing on a remote compute cluster. Another strength of this package is that global variables and functions are automatically identified and exported as needed, making it straightforward to tweak existing code to make use of futures.

Copy Link

Version

Install

install.packages('future')

Monthly Downloads

375,453

Version

1.69.0

License

LGPL (>= 2.1)

Issues

Pull Requests

Stars

Forks

Maintainer

Henrik Bengtsson

Last Published

January 16th, 2026

Functions in future (1.69.0)

getGlobalsAndPackages

Retrieves global variables of an expression and their associated packages
future

Create a future
futureOf

Get the future of a future variable
futureAssign

Create a future assignment
makeClusterFuture

Create a Future Cluster of Stateless Workers for Parallel Processing
futureSessionInfo

Get future-specific session information and validate current backend
clusterExportSticky

Export globals to the sticky-globals environment of the cluster nodes
find_references

Get the first or all references of an R object
futures

Get all futures in a container
getExpression

Inject code for the next type of future to use for nested futures
multisession

Create a multisession future whose value will be resolved asynchronously in a parallel R session
plan

Plan how to resolve a future
nullcon

Creates a connection to the system null device
.length

Gets the length of an object without dispatching
re-exports

Functions Moved to 'parallelly'
mandelbrot

Mandelbrot convergence counts
sessionDetails

Outputs details on the current R session
readImmediateConditions

Writes and Reads 'immediateCondition' RDS Files
requestCore

Request a core for multicore processing
signalConditions

Signals Captured Conditions
sequential

Create a sequential future whose value will be in the current R session
reset

Reset a finished, failed, canceled, or interrupted future to a lazy future
multicore

Create a multicore future whose value will be resolved asynchronously in a forked parallel process
save_rds

Robustly Saves an Object to RDS File Atomically
resetWorkers

Free up active background workers
value

The value of a future or the values of all elements in a container
zzz-future.options

Options used for futures
sticky_globals

Place a sticky-globals environment immediately after the global environment
usedCores

Get number of cores currently used
nbrOfWorkers

Get the number of workers available
run.Future

Run a future
result.Future

Get the results of a resolved future
resolved.ClusterFuture

Check whether a future is resolved or not
resolve

Resolve one or more futures synchronously
FutureBackend-class

Configure a backend that controls how and where futures are evaluated
cancel

Cancel a future
cluster

Create a cluster future whose value will be resolved asynchronously in a parallel process
backtrace

Back trace the expressions evaluated when an error was caught
FutureGlobals

A representation of a set of globals used with futures
MultiprocessFuture-class

A multiprocess future is a future whose value will be resolved asynchronously in a parallel process
UniprocessFuture-class

An uniprocess future is a future whose value will be resolved synchronously in the current process
FutureCondition

A condition (message, warning, or error) that occurred while orchestrating a future
FutureResult

Results from resolving a future
Future-class

A future represents a value that will be available at some point in the future