A comprehensive list of books has already been prepared by folks at stackoverflow:
http://stackoverflow.com/q/388242/1090079Quote
How to move between two real-time threads
I don't understand what you mean by that. What beyond normal synchronization would you need?
Quote
How to detect virtual inheritance at compile time
I don't think it's possible (beyond looking at the source

), unless I misunderstood your question. You can overload on one class being the base (virtual or not) of another using the only thing you can execute at compile time¹: template metaprogramming. Look up is_base_of:
http://en.cppreference.com/w/cpp/types/is_base_of¹ yeah, not anymore, but ctfe of constexpr is useless here.