libcaf  0.17.1


This library provides an implementation of the actor model for C++. It uses a network transparent messaging system to ease development of both concurrent and distributed software.

libcaf uses a thread pool to schedule actors by default. A scheduled actor should not call blocking functions. Individual actors can be spawned (created) with a special flag to run in an own thread if one needs to make use of blocking APIs.

Writing applications in libcaf requires a minimum of gluecode and each context is an actor. Scoped actors allow actor interaction from the context of threads such as main.

Getting Started

To build libcaf, you need GCC >= 4.8 or <tt>Clang >= 3.2</tt>, andCMake`.

The usual build steps on Linux and macOS are:

Hello World Example

More Examples

The Math Actor Example shows the usage of receive_loop and arg_match. The Dining Philosophers Example introduces event-based actors covers various features of CAF.