Concurrent Programming

Concurrent Programming : The Java Programming Language

4 (2 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 3 business days
When will my order arrive?

Description

This book shows professional programmers and students in operating systems and concurrent programming classes how to utilize the Java programming language to write programs that use semaphores, monitors, message passing, remote procedure calls, and the rendezvous for thread synchronization and communication. A Java algorithm animation package is also described.show more

Product details

  • Paperback | 272 pages
  • 154 x 230 x 20mm | 340.2g
  • Oxford University Press Inc
  • New York, United States
  • English
  • line figures
  • 0195113152
  • 9780195113150

Table of contents

Preface ; List of Figures ; List of Tables ; 1. Introduction ; 1.1 Hardware and Software Concepts ; 1.1.1 Processes ; 1.1 2 Threads ; 1.1.4 CPU Scheduling and Context Switching ; 1.1.5 Hardware Protection ; 2. The Java Programming Language ; 2.1 Sequential Features ; 2.1.1 Single-Class Static Programs ; 2.1.2 Multi-Class Static Programs ; 2.2 Objects ; 2.3 Command Line Argument Parsing ; 2.4 Inheritance ; 2.4.1 Interfaces ; 2.4.2 User-Defined Exceptions ; 2.5 Packages ; 2.5.1 Mathematical Functions ; 2.6 Genetic Algorithms ; 2.7 Animating Programs with Java's AWT ; 2.8 Exercises ; 3. Concurrent Programming ; 3.1 Java Threads ; 3.1.1 Thread States and Scheduling ; 3.2.1 Other Thread Methods ; 3.2 Why Use Threads? ; 3.3 Debugging Techniques ; 3.4 Race Conditions and Thread Synchronization ; 3.4.1 Memory System Behavior ; 3.4.2 Thread Priorities and Starvation ; 3.5 The Mutual Exclusion Problem ; 3.5.1 Software Solutions for Two Threads ; 3.5.2 Software Solutions for More Than Two Threads ; 3.5.3 Hardware Solutions ; 3.5.4 Blocking Solutions ; 3.6 Exercises ; 4. Semaphores ; 4.1 Definitions and Implementation ; 4.2 Java Semaphores ; 4.2.1 Binary Semaphores ; 4.2.2 Counting Semaphores ; 4.3 Classical Operating Systems Problems ; 4.4 Semaphore Solutions ; 4.4.1 The Bounded Buffer Producer and Consumer ; 4.4.2 Using Bounded Buffers ; 4.4.3 The Sleeping Barber ; 4.4.4 The Dining Philosophers ; 4.4.5 The Readers and Writers ; 4.5 Deadlock ; 4.6 Counting Semaphores From Binary ; 4.7 Animating Operating Systems Algorithms ; 4.8 Exercises ; 5. Monitors ; 5.1 Definitions ; 5.2 Signal and Exit ; 5.2.1 The Bounded Buffer Producer and Consumer ; 5.2.2 The Dining Philosphers ; 5.2.3 The Readers and Writers ; 5.3 Signal and Continue ; 5.3.1 Java Monitors ; 5.3.2 The Bounded Buffer Producer and Consumer ; 5.3.3 The Dining Philosophers ; 5.3.4 The Readers and Writers ; 5.4 Deadlock ; 5.5 Binary and Counting Semaphore Monitors ; 5.6 Locks ; 5.7 Notification Objects ; 5.8 Implementing Monitors with Semaphores ; 5.8.1 Named Condition Variables for Java ; 5.9 Algorithm Animation ; 5.10 Exercises ; 6. Message Passing and the Rendezvous ; 6.1 Message Passing Definitions ; 6.2 Message Passing in Java ; 6.2.1 Synchronization Using Message Passing ; 6.2.2 Distributed Mutual Exclusion ; 6.2.3 Conditional Message Passing ; 6.2.4 The Distributed Dining Philosophers ; 6.3 Rendezvous ; 6.3.1 Conditional Rendezvous ; 6.4 Remote Method Invocation ; 6.5 More Animation with Java ; 6.6 Exercises ; 7. Parallel Computing ; 7.1 Definitions ; 7.2 Data Parallel Message Passing ; 7.3 Worker Crew Message Passing ; 7.4 Shared Memory Parallelism ; 7.5 Patterns of Communication ; 7.6 Exercises ; Bibliography ; Index ; List of Programs/Classes ; List of Library Classes ; Program and Library Class Source Codeshow more

Rating details

2 ratings
4 out of 5 stars
5 50% (1)
4 0% (0)
3 50% (1)
2 0% (0)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X