Thead-safe Signals

Thanks a bunch @lithium. I was aware of the io_service in Cinder through using asio but had no idea about dispatchAsync(). I searched the discourse and found this other thread with you yourself explaining it which helped a lot.

To resolve the issue of adding connections mid-program, can I maybe use an std::atomic<Signal> or something similar? or a mutex? or will that not work?

Also do you know if I connect events to Cinder’s main update signal, do they happen before each update or after the update before the draw? Is there a way to set the order of how these events are called? Sorry this is not a threading question per se but since the workaround is to have an update event in my class that is connected to Cinder’s, I thought I’d ask. Thanks!