
TL;DR. The inability to cancel threads in C++ can result in bizarre semantics even in seemingly straightforward (and almost) declarative code. folly::Future is an interesting case in point.
Continue reading “folly:Future, onTimeout(), and a race condition”