This PR implements a --threadsafe option to generate a dispatch loop for the use case where different thread(s) generate events to be processed by a dispatch loop. If this option is selected, the code generated requires c++17 because it uses std::optional
This PR implements a --threadsafe option to generate a dispatch loop for the use case where different thread(s) generate events to be processed by a dispatch loop. If this option is selected, the code generated requires c++17 because it uses std::optional