The design is derived from C++ Actor Framework (CAF).
Actors are always allocated with a control block that stores its identity
When allocating a new actor, CAF will always embed the user-defined actor in an
actor_storage with the control block prefixing the actual actor type, as
shown below.
+----------------------------------------+
| storage!T |
+----------------------------------------+
| +-----------------+------------------+ |
| | control block | data!T | |
| +-----------------+------------------+ |
| | actor ID | mailbox | |
| | node ID | . | |
| +-----------------+------------------+ |
+----------------------------------------+
The design is derived from C++ Actor Framework (CAF).
Actors are always allocated with a control block that stores its identity
When allocating a new actor, CAF will always embed the user-defined actor in an actor_storage with the control block prefixing the actual actor type, as shown below.
+----------------------------------------+ | storage!T | +----------------------------------------+ | +-----------------+------------------+ | | | control block | data!T | | | +-----------------+------------------+ | | | actor ID | mailbox | | | | node ID | . | | | +-----------------+------------------+ | +----------------------------------------+