PRO3 | Concurrency with Java


Module description
Lecturer(s): Pieter van den Hombergh Ferd van Odenhoven

Planning

The course is executed in 7 lecture weeks in the 2nd half of semester 3, starting in the week of Monday, November 10th 2008

Week.day Contents Slides Lab Tasks
1.1
2008-11-13
Transactions handouts slides Relax from the previous exams;-)
1.2
2008-11-14
Thread Safety handouts slides Restaurant Task NL DE
Initial source-code
If you are a bit rusty on threading with Java, rehearse by visiting on of the tutorials on the web. The tutorial at the official sun site is quite good. Especially take care of sunchronisation, the monitor concept and object lock ownership. This will be subject in the assessments.
Hand in before week 2 end of day 2.
An introductory example to improve (taken from www.tutorials.de): KundeMain.java
2.1
2008-11-20
2.2
2008-11-21
Sharing Objects handouts slides
3.1
2008-11-27
Composing Objects handouts slides Restaurant 2.0
  1. Describe your policy for making the Restaurant thread safe, that is the policy that you used to program Restaurant 1.0. Analyse all possible situations where things could go wrong and describe your solutions!
  2. Test your code against the chosen policy. Don't alter your code in your Restaurant 1.0, except for possible testing code lines. Also look at the CPU-usage.
  3. Make a new design for a threadsafe restaurant: Restaurant 2.0.
  4. Hand in your results, printed or pdf, week 4 day 1!
3.2
2008-11-28
4.1
2008-12-04
Building Blocks handouts slides Crossing task: see: A Road To Kill!; with everything you need for this task.
Hand in before week 5 day 1.
4.2
2008-12-05
Task Execution handouts slides
Sequence Diagrams:Future Page Render (with Future interface) Page Renderer(with ExecutorService interface)
Vehicle Tracker Task
Hand in before week 6 day 1.
5.1
2008-12-11
Explain the interaction shown in the Page Renderer diagram (the code is in the book: page 130.)
Hand in before the end of week 5 day 2.
5.2
2008-12-12
Cancellation and Shutdown handouts slides
6.1
2008-12-18
Applying Thread Pools handout slides Planner Puzzle
Hand in before the end of week 7 day 2.
6.2
2008-12-19
Avoiding Liveliness Hazards handouts slides
7.1
2009-01-08
Performance and scalability handouts slides
7.2
2009-01-09
Assessments Assessments Assessments
latex beamer sources of the Concurrency slides, export of 20080701