The latest edition of a classic text on concurrency and distributed programming – from a winner of the ACM/SIGCSE Award for Outstanding Contribution to Computer Science Education.
At times concurrency can be pretty confusing. Even problems in simple multi-threaded programs can be a pain to track down. I found this book enlightening and full of simple to grasp examples that were easy to follow along with. The examples in the book are often given in many different languages including Promela, Ada, c, Java and Pascal. For anyone wanting to learn more about concurrency and distributed programming (e.g. semaphores, mutex, monitors) but wanting to pass up on the 400+ pages of text book, this is a good start.
I read this book a few years ago, but writing the review now :P
Ben-Ari's book is perhaps the best book for understanding the theories of concurrent and distributed computing. I am thankful to my teacher in graduate study who recommended the first edition of this book while teaching an Operating Systems course. I loved reading that book. The second edition is also great. However, some notable omission is Software Transactional Memory model of concurrency. But otherwise, it is a great book to have a life-time understanding of concurrent and distributed computing :)