Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
libflux/reactor: add flux_reactor_active_incref(), _decref() #2387
Per discussion in #2289, add two new reactor functions to manipulate active watcher counts. When you want to start a watcher that should not increase the active watcher count, use:
to stop it use:
This allowed for a bit of cleanup in the
There's a loose PMI fix in here too (very minor, but was bugging me).
Remove the logic in then attach subcommand for stopping signal watchers when it's time to exit the reactor loop. Instead, simply ensure those watchers do not affect the active watcher count with the idiom: flux_watcher_start() flux_reactor_active_decref(). flux_reactor_active_incref() flux_watcher_stop()
Add descriptions and stubs for flux_reactor_active_incref() and flux_reactor_active_decref().
Problem: make clean doesn't remove flux_future_fulfill_with.3. Add stub to MAN3_FILES_SECONDARY and add production rule.
@@ Coverage Diff @@ ## master #2387 +/- ## ========================================== - Coverage 80.92% 80.91% -0.02% ========================================== Files 222 222 Lines 34991 34986 -5 ========================================== - Hits 28317 28308 -9 - Misses 6674 6678 +4
BTW this won't work for message watchers, because they are tied to an internal "dispatcher" object that holds one reference on the reactor (through the single "handle watcher"). There would need to be a separate thing done for message watchers if/when that case arises.