Zu Hauptinhalt springenZur Suche springenZu Hauptnavigation springenZu Footer springen
Logo der Fachhochschule Nordwestschweiz
Studium
Weiterbildung
Forschung und Dienstleistungen
Internationales
Die FHNW
De
Standorte und KontaktBibliothek FHNWKarriere an der FHNWMedien
Logo der Fachhochschule Nordwestschweiz
  • Studium
  • Weiterbildung
  • Forschung und Dienstleistungen
  • Internationales
  • Die FHNW
De
Standorte und KontaktBibliothek FHNWKarriere an der FHNWMedien
Module
Concurrent Programming

Concurrent Programming

Nummer
conpr
ECTS
3.0
Anspruchsniveau
advanced
Inhaltsübersicht
Um die Leistung moderner Multicore-Rechner voll auszuschöpfen und um auf asynchrone Ereignisse reagieren zu können, ist nebenläufige Programmierung (Concurrent Programming) nötig. Im Modul Concurrent Programming werden verschiedene Modelle eingeführt um die Probleme der Synchronisation und Koordination zu lösen: Locks & Conditions, Nichtblockierende Synchronisation (Lock-Free Programming), Message-Passing Modelle und Transactional Memory. Themen:
  • Einführung in Thema Concurrency
  • Locks: Race Conditions, Mutual Exclusion & Deadlocks
  • Condition Synchronization: Wait / Notify & Interrupts
  • Java Memory Model
  • Sharing Objects: Immutability
  • Lock-Free Programming
  • Synchronizers
  • Tasks: Fork-Join, Futures, parallele und reaktive Streams
  • Message Passing: Aktoren
  • Software Transactional Memory
  • Testen nebenläufiger Programme
Lernziele
Ziel dieses Moduls ist es, dass die Studierenden die Probleme der Synchronisation und Koordination beherrschen und korrekte nebenläufige Programme schreiben können. Die Studierenden
  • kennen die wichtigsten theoretischen Aspekte der nebenläufigen Programmierung und können Situationen bezüglich Deadlock-Gefahr und korrekter Synchronisation einschätzen,
  • kennen verschiedene Modelle um Concurrency-Probleme zu lösen,
  • kennen gebräuchliche Werkzeuge für die nebenläufige Programmierung und können diese erfolgreich einsetzen,
  • können korrekte nebenläufige Programme schreiben.
Empfohlene Vorkenntnisse
  • Algorithmen & Datenstrukturen 2 (algd2)
Leistungsbewertung
Erfahrungsnote
Zusatzinformationen
Im Unterricht werden die Programmiersprachen Java und Scala verwendet (in Scala wird eingeführt).

Studium

Angebot

  • Studium
  • Weiterbildung
  • Forschung & Dienstleistungen

Über die FHNW

  • Hochschulen
  • Organisation
  • Leitung
  • Facts and Figures

Hinweise

  • Datenschutz
  • Accessibility
  • Impressum

Support & Intranet

  • IT Support
  • Login Inside-FHNW

Member of: