An experimental C++ actor-system project exploring message-driven concurrency, bounded mailboxes, actor lifecycle management, failure recovery, scheduling, logging, and tracing.
This is a learning and experimentation repository, not a production-ready actor framework.
The repository was extracted from a larger collection of C++ practice projects while preserving its original development history.
actor_model.h— actor-per-dispatcher-thread implementation.actor_model_threadpool_version.h— unfinished experiment exploring shared thread-pool scheduling for actors.actor_model_logger_tracer.h— experimental event logging and tracing support.actor_model_test.cpp— test and demonstration program from the original development work.
The thread-pool-based version is retained as historical experimental code. Its legacy thread-pool dependency has not been integrated into this repository and it should not currently be treated as a supported build target.
Actor mailboxes use the bounded MPMC queue from Concurrent-Queues-Lab-cpp.
The queue repository is included as a pinned Git submodule.
Clone with submodules:
git clone --recurse-submodules \
git@github.com:firefly24/Actor-System-Lab-cpp.git
For an existing clone:
git submodule update --init --recursivedesign_draft.mdrecords the evolving architecture and design decisions.progress.mdrecords development progress and encountered problems.visual_tracer_prog.pyis an experimental trace-visualization utility.- The included images preserve profiling and debugging observations from the original experiments.
The historical source and dependency structure have been preserved, but the project has not yet been revalidated as a clean standalone build following the repository extraction.