Generic Locking in C++ - Andrei Alexandrescu - Tech Talk