ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1949 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Title:
Multi-threaded Programming in C++
Author:
Mark Walmsley
ISBN:
1-85233-146-1
Publisher:
Springer-Verlag
Pages:
223pp
Price:
£29.50
Reviewer:
Allan Kelly
Subject:
advanced c++; parallel systems
Appeared in:
12-5
In the last couple of years I have become increasingly interested in, and involved in multi-threaded programming using C++. Having hit one or two problems I thought "someone must have documented these" and so I sought out and bought about the only (obvious) book on the market. If you are in this situation do not buy this book.

I had hoped for a book that would explore the depths of multi-threaded programs using the C++ language. At best this is a book for beginners, even here although it may be an adequate introduction I cannot recommend it. The author seems unsure of his audience: while he covers thread basics he also feels the need to cover C++ basics, and on occasions C basics. This may be normal in a 1000-page book but I expect a 200 page book to be clear and to the point.

At its worst the author shows scant consideration for industry practice (all classes are named with UPPERCASE) and ignores his own text: he introduces "resource acquisition is initialisation" without naming it and having shown its usefulness forgets about it for the rest of the book.

The book is based around his own set of threading classes for threads, mutex, events, etc. There is no discussion of third party classes, although pthreads and Win32 source code is printed there is no CD or web site - nor is there any attempt to make the code cross platform.

For these and other reasons (e.g. no use of the standard library although the book was published after the standard, poor design of classes, scant attention to exceptions) I cannot recommend the book to beginners. While it may teach you something about threads you may also pick up poor design and implementation habits.

The greatest shame of this book is that a good guide to multi-threaded programming in the C++ language is required and this is an opportunity missed.