global executors with weak_ptr semantics
Summary:
unfortunately, can't use atomics now that a weak_ptr is stored instead of a raw ptr, hence the additional singleton locks
might want to make an overload of via() that takes shared_ptr to integrate more easily? or change via() to store a shared_ptr (and make it non-owning if a raw ptr is passed)
Test Plan: unit
Reviewed By: davejwatson@fb.com
Subscribers: jsedgwick, trunkagent, fugalh, folly-diffs@
FB internal diff:
D1764359
Tasks:
5002442
Signature: t1:
1764359:
1420845340:
349ea88091d7ca4ee386b54aec599647341fadd4