REVIEW - Programming with POSIX Threads


Programming with POSIX Threads


David R. Butenhof




Addison-Wesley Professional (1997)




Tom Hughes


April 2000



This book aims both to act both as a tutorial in threaded programming and as a reference for the POSIX 1003.1c-1995 standard interface for threading implementations - a standard which is more commonly known as pthreads.

The book begins with an overview of the basic concepts behind asynchronous and threaded programming and then moves on to discuss the guts of pthreads, first in a chapter on creating and running threads, and then in a chapter on the various methods of synchronising threads that pthreads provides.

There is then a brief interlude from discussion of the pthreads interface to concentrate on various patterns for threaded programs before returning to discuss the more advanced portions of the pthreads interface and how pthreads interacts with other POSIX standards.

The book then moves on to a look at the problems of integrating threaded code with library code that may or may not be thread safe and provides some suggestions on approaches for debugging threaded code which is often a significantly more difficult task than debugging unthreaded code.

The final section of the book is a reference to the pthreads interface listing all the functions along with their prototypes and brief descriptions.

Overall this is a well written book that well meets it's twin objectives and provides an excellent introduction to threaded programming for anyone who is a competent C programmer in the non- threaded world.

Book cover image courtesy of Open Library.