Professional Multicore Programming: Design and Implementation for C++ Developers