Parallele Programmierung in Java
Beschreibung
Die parallele Programmierung ist aus der modernen Software-Entwicklung nicht mehr wegzudenken. Java wurde dazu in den neueren Versionen um zahlreiche Features erweitert, welche diese Art der Programmierung deutlich vereinfachen. In unserem Seminar werden sowohl die Bordmittel der Sprache, als auch populäre Bibliotheken wie RxJava oder Akka vorgestellt und durch praktische Übungen vertieft.
Schulungsinhalte
Grundlagen der Parallelität in Java
- Wege zum parallelen Programmieren: Threads, Streams, Futures und Aktoren
- Single-Core vs. Multi-Core
- Synchronisation und Ausschluss
- Parallelität vs. Asynchronität
- Task- und Datenparallelität
- Kritische Abschnitte
Java Threads
- Grundlagen, Definition und Start von Threads, sleep, join
- Elementare Thread-Eigenschaften, Thread-State
- Daemon Threads
- Threads im Kontext vom Betriebssystem
- Probleme mit thread-basierter Programmierung: Deadlock, Livelock, Starvation, Race Condition
- Typische Anwendungsfälle: Client/Server-Programmierung, Erzeuger/Verbraucher, aufwändige Berechnungen
Synchronisationskonzepte
- Schlüsselwort synchronized
- Überblick Lock-Klassen in Java
- ReentrantLocks, CyclicBarrier, Latches und weitere
- Monitor und wait/notify
- Collections und Multi-Threading:
- Threadsichere Collections in Java
- BlockingQueue, Concurrent Maps
Abstrahierende Konzepte in Java
- Executors, Atomics, ForkJoinPools
- Futures in Java: CompletableFuture
- Java 8: Parallele Streams
Reactive Streams
- Die Grundidee und das “Reactive Manifesto”
- Überblick RxJava, Flows und Observables
- Asynchrone Datenströme und back pressure
Aktorenmodelle
- Aktoren als Model für nebenläufige Programmierung
- Kurzeinführung in Akka
Zielgruppe
Dieses Seminar richtet sich an Software-Entwickler, mit Grundkenntnissen der Programmiersprache Java, die gezielt im Bereich der parallelen Programmierung stärken werden wollen.
Zur Zeit sind keine Termine verfügbar.
SIE BENÖTIGEN HILFE ODER HABEN
FRAGEN ZU IHRER BUCHUNG?
Dr. Frank Raiser
+49 731 1403434-51
schulung@konzept-is.de
Nur einen Moment..