Product Description
This book clearly explains the concepts of multithreaded programs and shows developers how to skillfully construct efficient and complex applications. From basic thread synchronization using mutexes and semaphores, to advanced topics like creating reusable thread pools or implementing a deferred processing queue, the book uses real-world applications and carefully constructed examples to illustrate the principles of multithreaded programming. Some of the topics covered include:
- How the Windows operating systems handle threads
- Multithreading primitives in the Win32 API
- Techniques for generating thread-safe dynamic link libraries
- Advanced techniques for thread synchronization
- Basic scenarios for building multithreaded user interfaces
The CD-ROM features Mcl, the authors' C++ class library for multithreaded programming, which both wraps multithreaded API functions and easily supports more complex multithreaded scenarios. For programmers using MFC, an additional library, Mcl4Mfc, is included for MFC compatibility.
About the Author
Aaron Michael Cohen started programming computers as a hobby in 1977, on an RCA 1802 single board microcomputer. While attending medical school in the early '80s, he explored numerous computer platforms (in his spare time!) including the Atari 800, the Macintosh, and the IBM PC. Realizing his greatest talents lay in computer programming, he decided to leave medicine and pursue a career in software development. His first jobs involved computer based medical imaging, which lead to work on high-quality image and video compression. Currently, Aaron is employed at Intel Corporation developing video teleconferencing systems in C and C++ on Windows 95 and NT. He has an undergraduate background in engineering and holds an M.D. from the University of Michigan. Mike Woodring has been programming retail Windows applications, DLLs, and device drivers on Intel architecture platforms since the release of Windows 3.0. As a systems software engineer at Intel, he developed realtime ISDN telecommunications software in C++ for telephony, Internet, and desktop video conferencing products. Currently, he works as an independent consultant and teaches courses on Win32 programming. Mike holds a bachelor's degree in computer science from Montana State University.