OBJECT-ORIENTED PROGRAMMING, SYSTEMS, LANGUAGES and APPLICATIONS
 
 
Program
 


Program (2mb PDF)

Explore
  Invited Speakers
  Onward!
  Panels
  Workshops
Discover
  Research Papers
  Student Research Comp.
  Posters
  Doctoral Symposium
  Educators' Symposium
  Wiki Symposium
  Dynamic Lang. Symp.
Understand
  Tutorials
  Essays
  Practitioner Reports
  Demonstrations
Create
  DesignFest
  Lightning Talks
  FlashBoF
  Instant Arts School Exp.
 
Other Events
 
Resort Map (364kb PDF)
 
Resort Map (JPG)

 

 
Basket
 

view, help

"Introduction to Concurrent Programming in Java 5.0"

 

 
Page
 

Printer-friendly

 
 
  > Tutorials > All Tutorials

 : Monday Morning Tutorials (8:30 - 12:00) : Languages and Paradigms : Monday : Programming Techniques

Introduction to Concurrent Programming in Java 5.0

Pacific Salon 5
Monday, 8:30, half day

 


 
7·8·9·10·11·12·13·14·15·16·17·18·19·20·21

David Holmes, DLTeCH Pty Ltd
Brian Goetz, Quiotix Corp

Tutorial number: 20

Concurrent programming has mostly been the domain of systems programmers rather than application developers, but Java's support for concurrency has enticed many to try their hand at building concurrent applications. Concurrent programming poses many traps for the unwary, however.

This tutorial demonstrates various design patterns and techniques for constructing concurrent applications in Java and for managing that concurrency. On the language side, we examine Java's mechanisms to support concurrent programming, together with some of the more advanced API's from the java.util.concurrent package. On the design side, we explore object structures and design rules that can successfully resolve the competing forces (safety, liveness, efficiency, coordination, reusability) present in concurrent software design problems.

Beginner: It is assumed that the attendee is familiar with basic OO concepts and has a working knowledge of the Java programming language.

David Holmes, DLTeCH Pty Ltd:  David Holmes is Director and Chief Scientist of DLTeCH Pty Ltd, located in Brisbane, Australia. His work with Java technology has focused on concurrency and synchronization support in the language and virtual machine and he has most recently been working on a real-time Java virtual machine. David was a member of the JCP Expert Group for JSR-166 "Concurrency Utilities", that shipped in the Java 5.0 release. He has presented tutorials on concurrent Java programming and design at numerous international object-oriented programming conferences over the past eight years. Along with Ken Arnold and James Gosling, he is a co-author of the book "The Java Programming Language" - Third and Fourth Editions. David completed his Ph.D. at Macquarie University, Sydney, in 1999, in the area of synchronization within object-oriented systems.

Brian Goetz, Quiotix Corp:  Brian Goetz is a Principal Consultant at Quiotix, a software development and consulting firm in Los Altos, California. He has published over 60 articles on Java development in major industry publications. Brian was a member of the JCP Expert Group for JSR-166 "Concurrency Utilities", that shipped in the Java 5.0 release. He is also a current member of the JCP Expert group for JSR 107 "Java Temporary Caching API". He is a co-author of the book "Java Concurrency in Practice", to be published in October 2005 by Addison-Wesley.

 
.