{"product_id":"modern-multithreading-implementing-testing-and-debugging-multithreaded-java-and-cpthreadswin32-programs-9780471725046","title":"Modern Multithreading Implementing Testing and","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003eMaster the essentials of concurrent programming,including testing and debugging    This textbook examines languages and libraries for multithreaded programming. Readers learn how to create threads in Java and C++, and develop essential concurrent programming and problem-solving skills.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e\"…an excellent work on concurrent programming, examining languages and libraries for developing multithreaded programs.\" (\u003ci\u003eCHOICE\u003c\/i\u003e, April 2006)\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003cb\u003ePreface.\u003c\/b\u003e  \u003cp\u003e\u003cb\u003e1 Introduction to Concurrent Programming.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e1.1 Processes and Threads: An Operating System’s View.\u003c\/p\u003e \u003cp\u003e1.2 Advantages of Multithreading.\u003c\/p\u003e \u003cp\u003e1.3 Threads in Java.\u003c\/p\u003e \u003cp\u003e1.4 Threads in Win32.\u003c\/p\u003e \u003cp\u003e1.5 Pthreads.\u003c\/p\u003e \u003cp\u003e1.6 C++ \u003ci\u003eThread\u003c\/i\u003e Class.\u003c\/p\u003e \u003cp\u003e1.7 Thread Communication.\u003c\/p\u003e \u003cp\u003e1.8 Testing and Debugging Multithreaded Programs.\u003c\/p\u003e \u003cp\u003e1.9 Thread Synchronization.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e2 The Critical Section Problem.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e2.1 Software Solutions to the Two-Thread Critical Section Problem.\u003c\/p\u003e \u003cp\u003e2.2 Ticket-Based Solutions to the n-Thread Critical Section Problem.\u003c\/p\u003e \u003cp\u003e2.3 Hardware Solutions to the n-Thread Critical Section Problem.\u003c\/p\u003e \u003cp\u003e2.4 Deadlock, Livelock, and Starvation.\u003c\/p\u003e \u003cp\u003e2.5 Tracing and Replay for Shared Variables.\u003c\/p\u003e \u003cp\u003e2.5.6 Note on Shared Memory Consistency.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e3 Semaphores and Locks.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e3.1 Counting Semaphores.\u003c\/p\u003e \u003cp\u003e3.2 Using Semaphores.\u003c\/p\u003e \u003cp\u003e3.3 Binary Semaphores and Locks.\u003c\/p\u003e \u003cp\u003e3.4 Implementing Semaphores.\u003c\/p\u003e \u003cp\u003e3.5 Semaphore-Based Solutions to Concurrent Programming Problems.\u003cbr\u003e \u003c\/p\u003e \u003cp\u003e3.6 Semaphores and Locks in Java.\u003c\/p\u003e \u003cp\u003e3.7 Semaphores and Locks in Win32.\u003c\/p\u003e \u003cp\u003e3.7.6 Example: C++\/Win32 Bounded Buffer.\u003c\/p\u003e \u003cp\u003e3.8 Semaphores and Locks in Pthreads.\u003c\/p\u003e \u003cp\u003e3.9 Another Note on Shared Memory Consistency.\u003c\/p\u003e \u003cp\u003e3.10 Tracing, Testing, and Replay for Semaphores and Locks.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e4 Monitors.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e4.1 Definition of Monitors.\u003c\/p\u003e \u003cp\u003e4.2 Monitor-Based Solutions to Concurrent Programming Problems.\u003c\/p\u003e \u003cp\u003e4.3 Monitors in Java.\u003c\/p\u003e \u003cp\u003e4.4 Monitors in Pthreads.\u003c\/p\u003e \u003cp\u003e4.5 Signaling Disciplines.\u003c\/p\u003e \u003cp\u003e4.6 Using Semaphores to Implement Monitors.\u003c\/p\u003e \u003cp\u003e4.7 Monitor Toolbox for Java.\u003c\/p\u003e \u003cp\u003e4.8 Monitor Toolbox for Win32\/C++\/Pthreads.\u003c\/p\u003e \u003cp\u003e4.9 Nested Monitor Calls.\u003c\/p\u003e \u003cp\u003e4.10 Tracing and Replay for Monitors.\u003c\/p\u003e \u003cp\u003e4.11 Testing Monitor-Based Programs.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e5 Message Passing.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e5.1 Channel Objects.\u003c\/p\u003e \u003cp\u003e5.2 Rendezvous.\u003c\/p\u003e \u003cp\u003e5.3 Selective Wait.\u003c\/p\u003e \u003cp\u003e5.4 Message-Based Solutions to Concurrent Programming Problems.\u003c\/p\u003e \u003cp\u003e5.5 Tracing, Testing, and Replay for Message-Passing Programs.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e6 Message Passing in Distributed Programs.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e6.1 TCP Sockets.\u003c\/p\u003e \u003cp\u003e6.3 Timestamps and Event Ordering.\u003c\/p\u003e \u003cp\u003e6.4 Message-Based Solutions to Distributed Programming Problems.\u003c\/p\u003e \u003cp\u003e6.5 Testing and Debugging Distributed Programs.\u003c\/p\u003e \u003cp\u003ePrograms.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003e7 Testing and Debugging Concurrent Programs.\u003c\/b\u003e\u003c\/p\u003e \u003cp\u003e7.1 Synchronization Sequences of Concurrent Programs.\u003c\/p\u003e \u003cp\u003e7.2 Paths of Concurrent Programs.\u003c\/p\u003e \u003cp\u003e7.3 Definitions of Correctness and Faults for Concurrent Programs.\u003c\/p\u003e \u003cp\u003e7.4 Approaches to Testing Concurrent Programs.\u003c\/p\u003e \u003cp\u003e7.5 Reachability Testing.\u003c\/p\u003e \u003cp\u003eFurther Reading.\u003c\/p\u003e \u003cp\u003eReferences.\u003c\/p\u003e \u003cp\u003eExercises.\u003c\/p\u003e \u003cp\u003e\u003cb\u003eIndex.\u003c\/b\u003e\u003c\/p\u003e","brand":"John Wiley \u0026 Sons Inc","offers":[{"title":"Default Title","offer_id":49402662486359,"sku":"9780471725046","price":89.06,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780471725046.jpg?v=1730481154","url":"https:\/\/bookcurl.com\/products\/modern-multithreading-implementing-testing-and-debugging-multithreaded-java-and-cpthreadswin32-programs-9780471725046","provider":"Book Curl","version":"1.0","type":"link"}