Dies sind die archivierten Webseiten des Lehrstuhls für Programmierung und Softwaretechnik (PST).
Die Seiten des Software and Computational Systems Lab (SoSy) finden Sie auf https://www.sosy-lab.org/.

Proseminar "Nebenläufige Programmierung"

In diesem Proseminar werden Themen der nebenläufigen Programmierung behandelt und anhand von Java illustriert.

Google-Group dieser Veranstaltung: psem-concurrency-2008

Aktuelles

  • [2008-05-03] Es gibt jetzt die Google-Group; bitte (dort) Mitgliedschaft beantragen.

Folien

  • 00_einleitung_formales.pdf
  • 01_thread_safety.pdf
  • 02_sharing_objects.pdf
  • 04_building_blocks.pdf
  • 05_task_execution.pdf
  • 06_cancellation_and_shutdown.pdf
  • 07_applying_thread_pools.pdf
  • 08_gui_applications.pdf
  • 09a_avoiding_liveness_hazards.pdf
  • 09a_avoiding_liveness_hazards_handout.pdf
  • 09b_performance_and_scalability.pdf
  • 09b_performance_and_scalability_handout.pdf
  • 10_testing_concurrent_programs.pdf
  • 11_the_java_memory_model.pdf
  • 12_ausblick.pdf

Termin

Wöchentlich:

  • Fr 14-16 Uhr
  • Oe 0.33 (Oettingenstr. 67)

Teilnahmebedingungen

Die Vergabe der Vorträge (und Bekanntgabe der Vortragsthemen) findet in der ersten Semesterwoche (am 18.4.) statt.

Teilnahmevoraussetzung ist mindestens (es kann noch zu einer Beschränkung der Teilnehmeranzahl kommen):

  • Anmeldung im UniWorx
  • Ein Schein in Informatik 1
Bei weiteren Fragen: E-Mail an Axel Rauschmayer

.

Inhalt der Vorlesung

Nebenläufige Programmierung ist eines der spannendsten aktuellen Themen der Informatik. In diesem Proseminar soll dieses Thema gründlich und mit deutlichem Bezug zur Praxis unter Java behandelt werden.

Pro Woche wird ein Vortrag von einem Teilnehmer gehalten, insgesamt maximal 12. Die Themen sind (Vortrag Nr. 12 ist eines der optionalen Themen):

  • 1. Thread safety (2) [2. Mai, Zhang]
  • 2. Sharing objects (3) [9. Mai, Rauschmayer]
  • 3. Composing objects (4) [16. Mai, Zhang]
  • 4. Building blocks (5) [23. Mai, Rauschmayer]
  • 5. Task execution (6) [30. Mai, Zhang]
  • 6. Cancellation and shutdown (7) [6. Juni, Rauschmayer]
  • 7. Applying thread pools (8) [13. Juni, Zhang]
  • 8. GUI applications (9) [20. Juni, Rauschmayer]
  • 9. Avoiding liveness hazards (10) + Performance and scalability (11) [27. Juni, Zhang]
  • 10. Testing concurrent programs (12) [4. Juli, Rauschmayer]
  • 11. The Java memory model (16) [11. Juli, Rauschmayer]
  • 12. Nachbesprechung und Notenvergabe [18. Juli]
Das Proseminar richtet sich nach dem Buch " Java Concurrency in Practice" (von Brian Goetz und anderen). Die Klammern hinter den Vorlesungsthemen beziehen sich auf Kapitel dieses Buches. Von den Teilnehmern wird erwartet, dass sie die entsprechenden Kapitel vor

dem Vortrag lesen (wozu es kleine unangekündigte Tests geben wird).

Wir erwarten also aktive Vorbereitung und Mitarbeit für jede Stunde. Dafür wird man als Teilnehmer einen Stoff, der Spass macht, gründlich behandeln und ausserdem lernen, Vorträge zu halten.

Personen

Prof. Dr. Martin Wirsing

Axel Rauschmayer

 

Gefei Zhang