actor-framework

An Open Source Implementation of the Actor Model in C++

Github星跟蹤圖

CAF: C++ Actor Framework

CAF is an open source C++11 actor model implementation featuring
lightweight & fast actor implementations, pattern matching for messages,
network transparent messaging, and more.

Gitter
Jenkins
Documentation Status
Coverity

Online Resources

Report Bugs / Get Help

Community

Get CAF

FreeBSD Ports

We maintain a port for CAF, which you can install as follows:

pkg install caf

Alternatively, you can go to /usr/ports/devel/caf and tweak a few
configuration options before installing the port:

make config
make install clean

Homebrew

You can install the latest stable release with:

brew install caf

Alternatively, you can use the current development version by using:

brew install caf --HEAD

Conan

A Conan recipe for CAF along with pre-built libraries
for most platforms are available at bincrafters/caf.

VCPKG

You can build and install CAF using vcpkg dependency manager with a single command:

vcpkg install caf

The caf port in vcpkg is kept up to date by Microsoft team members and community contributors.

Get the Sources

Build CAF from Source

The easiest way to build CAF is to use the configure script. Other available
options are using CMake directly or
SNocs.

Using the configure Script

The script is a convenient frontend for CMake. See configure -h
for a list of available options or read the
online documentation.

./configure
make
make test
make install [as root, optional]

Using CMake

All available CMake variables are available
online.
CAF also can be included as CMake submodule or added as dependency to other
CMake-based projects using the file cmake/FindCAF.cmake.

Using SNocs

A SNocs workspace is provided by GitHub user
osblinnikov and documented
online.

Dependencies

  • CMake
  • Pthread (until C++11 compilers support the new thread_local keyword)

Supported Compilers

  • GCC >= 7
  • Clang >= 4
  • MSVC >= 2019

Supported Operating Systems

  • Linux
  • Mac OS X
  • FreeBSD 10
  • Windows >= 7 (currently static builds only)

Optional Dependencies

  • Doxygen (for the doxygen target)
  • LaTeX (for the manual target)

Scientific Use

If you use CAF in a scientific context, please use one of the following citations:

@inproceedings{cshw-nassp-13,
  author = {Dominik Charousset and Thomas C. Schmidt and Raphael Hiesgen and Matthias W{\"a}hlisch},
  title = {{Native Actors -- A Scalable Software Platform for Distributed, Heterogeneous Environments}},
  booktitle = {Proc. of the 4rd ACM SIGPLAN Conference on Systems, Programming, and Applications (SPLASH '13), Workshop AGERE!},
  pages = {87--96},
  month = {Oct.},
  year = {2013},
  publisher = {ACM},
  address = {New York, NY, USA}
}

@article{chs-rapc-16,
  author = {Dominik Charousset and Raphael Hiesgen and Thomas C. Schmidt},
  title = {{Revisiting Actor Programming in C++}},
  journal = {Computer Languages, Systems \& Structures},
  volume = {45},
  year = {2016},
  month = {April},
  pages = {105--131},
  publisher = {Elsevier}
}

You can find the papers online at
http://dx.doi.org/10.1145/2541329.2541336 and
http://dx.doi.org/10.1016/j.cl.2016.01.002.

主要指標

概覽
名稱與所有者actor-framework/actor-framework
主編程語言C++
編程語言CMake (語言數: 8)
平台
許可證BSD 3-Clause "New" or "Revised" License
所有者活动
創建於2011-03-04 14:59:50
推送於2025-06-14 08:53:09
最后一次提交
發布數95
最新版本名稱1.0.2 (發布於 )
第一版名稱V0.2.0 (發布於 2012-06-29 14:28:49)
用户参与
星數3.3k
關注者數177
派生數555
提交數8.6k
已啟用問題?
問題數938
打開的問題數52
拉請求數1004
打開的拉請求數4
關閉的拉請求數114
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?