-
Committer:
Christopher James Halse Rogers
-
Date:
2017-08-01 03:56:53 UTC
-
Revision ID:
christopher.halse.rogers@canonical.com-20170801035653-rqhrjrp0j9dvq3j6
*Another* stab at executor shutdown without deadlocks.
The C++ Executor proposal pervasively uses references to Executors rather than
owned executors, and provides the system_executor which has a lifetime that just
exceeds main().
This nicely resolves the deadlock involved with the Executor being destroyed while
a lock is held, due to shared_ptr<> destruction at an unexpected point, while still
ensuring that the Executor thread is destroyed before program exit, thus appeasing
Valgrind (and also anyone dlopen()ing Mir).