This document discusses different architectures for inter-thread communication (ITC) in automotive software projects. It compares approaches based on an event loop model versus using CommonAPI.
The event loop model involves each component (HMI, CTRL, SDK) running on its own thread with no direct communication. CommonAPI provides an interface definition language and code generation to define and implement interfaces between components across threads.
While the event loop is simpler, it risks blocking and depends on the programming language. CommonAPI standardizes IPC, supports multiple languages, and avoids runtime impacts, though it increases build time and complexity. In conclusion, CommonAPI provides a common solution for IPC and ITC that works across languages, but is