mattportas/yejong — pull request #8 by ajbennieston (2013-06-12 21:08:28+00:00)
Title: Use std::make_shared in schedule.cpp

std::make_shared(ctor_args...) yields a std::shared_ptr
constructed as though you called new T(ctor_args...) but does a single
alloc. for both the T and the shared_ptr data. It also avoids the
possibility of resource leaks due to errors in evaluating function
parameters, e.g.

```c++
some_func(std::make_shared(args...)); // is safer than
some_func(std::shared_ptr(new T(args...)));
```