General
About CSC
Organisation

People
Process for CSC hosting
School Models
Role of Local Organisers
Other Roles

Participants
Past Schools

2004 2005 2006 2007 2008 2009 2010 2011

Diploma at CSC
Sport at CSC
Inverted CSCs

iCSC05 iCSC06 iCSC08 iCSC10 iCSC11

Special schools

School@chep06

Inverted School 2006

CSC 2006

CSC2006 Overview

Practical Information

Programme

Schedule

Lecturers

Participants

Organisers

 
Examination results
 
Grants from EU -FP6

Eligibility Conditions

Level of grant support

How to apply
 

CSC-Live

School at chep06

     

inverted CERN School of Computing 2006 6-8-March 2006, CERN

Programme Overview

Computational Intelligence for HEP Data Analysis

The Art of Designing Parallel Applications

Software Testing: Fundamentals and Best Practices

Schedule

Lecturers

Lecturer Bios

Printable Version

Design Patterns for Concurrent Objects

   

Tuesday 7 March

 
11:30 - 12:25

Lecture 3

Design Patterns for Concurrent Objects

 

Marek Biskup

Design Patterns are recipes for writing maintainable and reusable object-oriented software.  This lecture presents several patterns used for distributed and multithreaded programming.

The lecture targets programmers interested in making their software more generic and reusable, especially those working on a multithreaded application.  Also programmers interested in Event-Handling Techniques may benefit from it.

Basic knowledge of threads, object oriented programming (classes, objects, methods, inheritance) is required.  Additional knowledge of the classical Design Patterns might help but is not required.

 

Design Patterns

- Overview

- Example: Proxy pattern

- Example: Abstract Factory pattern

 

Synchronization Patterns

- Motivation for Synchronization

- Scoped Locking pattern

- Locking in Java - finally statement

- Tread-Safe Interface pattern

- Synchronizing Proxy pattern

- Read-Write Lock pattern

- Double-Checked Locking pattern

- Monitor Object pattern

 

Concurrency Patterns

- Thread Pool pattern

- Tread Pools in Java

- Leader-Followers pattern

- Thread-Specific Storage pattern

 

Event-Handling Patterns

- Future pattern

- Futures in Java

- Events

- Event-driven Programming

- Event Loop

- Reactor pattern

- Proactor pattern

- Java AWT Event handling

 

 

iCSC
All on iCSCs
News
Registration

Post-reg.

Handouts
Forum
Programme

Computational Intelligence
Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

All lectures

Parallel Application

Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

All lectures

SW Testing
Theme

Lecture1

Lecture2

All lectures

Exercises
FAQ
Social Events

Feedback: Computing (dot) School (at) cern (dot) ch
Last update: Thursday, 14. November 2013 11:49

Copyright CERN