libcppa:为 C++11 设计 Actor 语义
编程语言
2013-01-07 v1
摘要
并行硬件使得并发成为高效程序执行的必要条件。然而,编写并发软件既具有挑战性又容易出错。C++11 提供了多编程的标准设施,如具有获取/释放语义的原子操作和 RAII 互斥锁,但这些原语仍然过于底层。正确且高效地使用它们仍需专家知识和手工定制。Actor 模型用显式的消息传递机制取代了通过共享进行的隐式通信。它既适用于并发也适用于分布式场景,且将所有 Actor 调度在适当预分配线程池中的轻量级 Actor 模型实现,其性能可优于等效的基于线程的应用程序。然而,除了特定厂商的孤立解决方案外,Actor 模型尚未进入原生编程语言领域。通过开源库 libcppa,我们旨在结合 Actor 模型构建可靠分布式系统的能力与 C++11 的性能及资源效率。
引用
@article{arxiv.1301.0748,
title = {libcppa - Designing an Actor Semantic for C++11},
author = {Dominik Charousset and Thomas C. Schmidt},
journal= {arXiv preprint arXiv:1301.0748},
year = {2013}
}
备注
10 pages