Tools for Message Passing Between Processes

Provides tools for passing messages between R processes. Shiny Examples are provided showing how to perform useful tasks such as: updating reactive values from within a future, progress bars for long running async tasks, and interrupting async tasks based on user input.

Asynchronous processing is critical for performing a wide array of tasks, from high performance computing to web services. Communication between these disparate asynchronous processes is often required. Currently the statistical computing language R provides no built in features to handle interprocess communication between R processes while they are performing computations. Several packages have been written to handle the passing of text or binary data between processes (e.g. txtq, liteq, and zmq). ipc allows you to easily pass R objects between processes along with an associated signal, and have handler functions automatically execute them in the receiving process.

There is particular focus on supporting asynchronous evaluation in Shiny applications. Examples are provided showing how to perform useful tasks such as:

  • Updating reactive values from within future
  • Progress bars for long running async tasks
  • Interrupting async tasks based on user input.


To install the latest version from CRAN run:


To install the latest development version from the github repo run:

# If devtools is not installed:
# install.packages("devtools")



To run an example application locally use:



Development Practices and Policies for Contributers


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


0.1.3 by Ian E. Fellows, 2 years ago

Report a bug at

Browse source code at

Authors: Ian E. Fellows

Documentation:   PDF Manual  

MIT + file LICENCE license

Imports R6, shiny, txtq

Suggests testthat, knitr, rmarkdown, future, promises, redux

Imported by shinyrecap.

See at CRAN