Parallele Programmierung
Moodle
git
Folien
Skript
Labor
CompletableFuture Framework
Java Threads
pp.01.01-Inhertience
pp.01.02-Runnable
pp.01.03-EndThread
Musterlösungen
Konkurrierender Zugriff
pp.02.01-MemoryBarrier
pp.02.02-ThreadLocal
pp.02.03-Lock
Musterlösungen
Steuerung von Threads
pp.03.01-SynchPhilosopher
pp.03.02-BoundedQueueWaitNotify
pp.03.03-BoundedQueueAwaitSignal
Musterlösungen
Threadpools und asynchrone Methodenaufrufe
pp.04.01-RunnableReturn
pp.04.02-Future
pp.04.03-ThreadPoolSize
Musterlösungen
Atomic-Variablen: Konkurrierender Zugriff auf Daten ohne gegenseitigen Ausschluss
pp.05.01-CounterAtomic
Musterlösungen
Synchronisation mit Lock-Objekten, Read-Write-Locks und Semaphoren
pp.06.01-SynchInterrupt
pp.06.02-LockTiming
Musterlösungen
Konkurrierender Zugriff auf Container-Datenstrukturen
pp.07.01-synchronizedWrapper
pp.07.02.Collections
Musterlösungen
CompletableFuture Framework
pp.08.01-ConcurrencyMonteCarloPiSeq
pp.08.02-ConcurrencyMonteCarloPiFuture
pp.08.03-CommonPool
pp.08.04-ConcurrencyMonteCarloPiCF
Musterlösungen
Communicating Sequential Processes: Entwurfsmuster mit Kanälen und Rendezvous
pp.10.01.Rendezvous
pp.10.02-Logger
Musterlösungen
Aktor-Modell und das Akka-Framework
pp.11.01-FindWords
pp.11.02-RouterFindWords
Musterlösungen
Fork-Join Framework
pp.12.01-ForkJoinArrayFilter
pp.12.02-ForkJoinArrayReduce
Musterlösungen
CompletableFuture Framework
Musterlösungen
pp.08.01-ConcurrencyMonteCarloPiSeq