The only ones I can think of off-hand are these two. The second one isn't really about parallel/concurrent/distributed programming per se, but rather about using Intels Threading Building Blocks - good book if that's what you want to do, but not very useful if not. The first book is interesting and covers a lot of ground (covering general techniques and algorithms as well as specific implementations with OpenMP, MPI and Java's facilities), but I liked Art of multiprocessor programming more, probably because it has a more beginner friendly teach everything from the very beginning approach. http://www.amazon.com/Patterns-Parallel-Programming-Timothy-... (http://www.amazon.com/Patterns-Parallel-Programming-Timothy-Mattson/dp/0321228111/ref=sr_1_1?ie=UTF8&qid=1400477708&sr=8-1&keywords=patterns+of+parallel+programming) http://www.amazon.com/Intel-Threading-Building-Blocks-Parall... (http://www.amazon.com/Intel-Threading-Building-Blocks-Parallelism/dp/0596514808/ref=sr_1_1?s=books&ie=UTF8&qid=1400477796&sr=1-1&keywords=intel+threading+building+blocks)
Also recommended in this reply