Covers Win32 multithreading techniques that make the Windows NT software faster and more responsive. This book explains how multithreading works, and the fundamentals of the Windows NT Thread Interface, including processes, thread management, creation, termination, and prioritization.
Windows NT is coming back as a subject. This book brings multithreading to the Windows NT operating system. It covers a specialized area of interest to programmers--multitasking computer operations. One current application that the authors cover is video on demand, bringing together the cable and movie industries.
Windowsreg; 95 and Windows NT & allow software developers to use the powerful programming technique of multithreading: dividing a single application into multiple "threads " that execute separately and get their own CPU time. This can result in significant performance gains, but also in programming headaches. Multithreading is difficult to do well, and previous coverage of the subject in Windows has been incomplete. In this book programmers will get hands-on experience in when and how to use multithreading, together with expert advice and working examples in C++ and MFC. The CD-ROM includes the code and sample applications from the book, including code that works with Internet Winsock.
Master the essentials of concurrent programming,including testingand debugging This textbook examines languages and libraries for multithreadedprogramming. Readers learn how to create threads in Java and C++,and develop essential concurrent programming and problem-solvingskills. Moreover, the textbook sets itself apart from othercomparable works by helping readers to become proficient in keytesting and debugging techniques. Among the topics covered, readersare introduced to the relevant aspects of Java, the POSIX Pthreadslibrary, and the Windows Win32 Applications ProgrammingInterface. The authors have developed and fine-tuned this book through theconcurrent programming courses they have taught for the past twentyyears. The material, which emphasizes practical tools andtechniques to solve concurrent programming problems, includesoriginal results from the authors' research. Chaptersinclude: * Introduction to concurrent programming * The critical section problem * Semaphores and locks * Monitors * Message-passing * Message-passing in distributed programs * Testing and debugging concurrent programs As an aid to both students and instructors, class libraries havebeen implemented to provide working examples of all the materialthat is covered. These libraries and the testing techniques theysupport can be used to assess student-written programs. Each chapter includes exercises that build skills in programwriting and help ensure that readers have mastered the chapter'skey concepts. The source code for all the listings in the text andfor the synchronization libraries is also provided, as well asstartup files and test cases for the exercises. This textbook is designed for upper-level undergraduates andgraduate students in computer science. With its abundance ofpractical material and inclusion of working code, coupled with anemphasis on testing and debugging, it is also a highly usefulreference for practicing programmers.
This is a clear introduction to the basic concepts of multi-threadingcomplemented by a detailed description of the multi-threading facilities available under the UNIX and Windows operating systems. The implementation mechanisms are hidden within C++ classes, which then provide standardized interfaces to the functionality. With traditional single-threaded programming, objects serve as passive repositories of functionality that are invoked by external codemulti-threading allows objects to become active entities that independently perform their own processing.
In-depth coverage is given of the emerging POSIX Threads library for UNIX and how to code with it. These pages explain the concepts and foundations of threads programming, including real-life constructions. The book compares and contrasts the Pthreads library with those for OS/2 and Windows NT throughout.
This practical book includes a tutorial of the entire set of Windows and .NET APIs required to write concurrent programs. Because so much of the threading and synchronization features of the platform are Windows-general, the author, Joe Duffy, focuses first on the general behavior and then on the API details of native and managed code. Interspersed among the tutorial are many difficult-to-discover, useful insights, and internal details about how things work.
Providing an overview of the Solaris and POSIX multithreading architectures, this book explains threads at a level that is completely accessible to programmers and system architects with no previous knowledge of threads. It covers the business and technical benefits of threaded programs, along with discussions of third party software that is threaded, pointing out the benefits. It also describes the design of the Solaris MT API, with references to distinctions in POSIX, contains a set of example programs which illustrate the usage of the Solaris and POSIX APIs, and explains the use of programming tools: Thread Analyzer, LockLint, LoopTool and Debugger.