global executors with weak_ptr semantics
authorJames Sedgwick <jsedgwick@fb.com>
Wed, 14 Jan 2015 15:08:50 +0000 (07:08 -0800)
committerwoo <woo@fb.com>
Mon, 2 Feb 2015 21:09:41 +0000 (13:09 -0800)
commit6214f971e82863efe7c72229dde0c84fc0594dd0
tree59e9d3104bb251f4954a9607bc2fab4d3d1462b7
parent32654ab1ec88206aeb4bd0366b165711e6a32948
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
folly/Executor.h
folly/Makefile.am
folly/wangle/concurrent/GlobalExecutor.cpp
folly/wangle/concurrent/GlobalExecutor.h
folly/wangle/concurrent/IOExecutor.cpp [deleted file]
folly/wangle/concurrent/IOExecutor.h
folly/wangle/concurrent/test/GlobalExecutorTest.cpp