Kurs

Multithreading mit Java («JAVA11»)

Erweitern Sie Ihre Kenntnisse der Applikationsentwicklung mit der Programmiersprache Java, um vertieftes Wissen zu Themen wie Multithreading, Monitoren, Locks, Synchronisation, Threadsicherheit und Fork/Join-Framework zu erlangen.
Dauer 2 Tage
Preis 1'350.–   zzgl. 8.1% MWST
Kursdokumente Digicomp Kursunterlagen

Kurs-Facts

  • Lernen, mit den verschiedenen Typen im Umfeld der Nebenläufigkeit von Java umzugehen

1 Nebenläufigkeit

  • Multitasking versus Multithreading
  • Prozesse versus Threads
  • Scheduling
  • Modelle

2 Threads

  • Zustände
  • Enumeration java.lang.Thread.State
  • Klasse java.lang.Thread
  • User Threads versus Daemon Threads
  • Prioritäten
  • Klasse java.lang.ThreadGroup

3 Runnables

  • Schnittstelle java.lang.Runnable
  • Schnittstelle java.util.concurrent.Executor
  • Schnittstelle java.util.concurrent.ThreadFactory
  • Schnittstelle java.util.concurrent.Callable

4 Executor Services und Thread Pools

  • Schnittstelle java.util.concurrent.ExecutorService
  • Schnittstelle java.util.concurrent.ScheduledExecutorService
  • Klasse java.util.concurrent.AbstractExecutorService
  • Klasse java.util.concurrent.ThreadPoolExecutor
  • Klasse java.util.concurrent.ScheduledThreadPoolExecutor
  • Schnittstelle java.util.concurrent.Future
  • Enumeration java.util.concurrent.TimeUnit
  • Klasse java.util.concurrent.Executors

5 Atomare Zugriffe

  • volatile
  • Klasse java.util.concurrent.atomic.AtomicBoolean
  • Klasse java.util.concurrent.atomic.AtomicInteger
  • Klasse java.util.concurrent.atomic.AtomicLong
  • Klasse java.util.concurrent.atomic.AtomicReference
  • Klasse java.util.concurrent.atomic.AtomicIntegerArray
  • Klasse java.util.concurrent.atomic.AtomicLongArray
  • Klasse java.util.concurrent.atomic.AtomicReferenceArray Synchronisation
  • Kollisionen
  • Monitoren
  • Klasse java.util.concurrent.Semaphore

6 Locks

  • Schnittstelle java.util.concurrent.locks.Lock
  • Klasse java.util.concurrent.locks.ReentrantLock
  • Schnittstelle java.util.concurrent.locks.ReadWriteLock
  • Klasse java.util.concurrent.locks.ReentrantReadWriteLock

7 Interaktion

  • Warten und Benachrichtigen
  • Schnittstelle java.util.concurrent.locks.Condition
  • Klasse java.util.concurrent.CyclicBarrier
  • Klasse java.util.concuttent.CountDownLatch
  • Klasse java.util.concurrent.Phaser

8 Threadsicherheit

  • Threadsichere Listen
  • Threadsichere Mengen
  • Threadsichere Schlangen
  • Threadsichere Abbildungen

9 Kommunikation

  • Pipes
  • Klasse java.io.PipedOutputStream
  • Klasse java.io.PipedInputStream
  • Klasse java.io.PipedWriter
  • Klasse java.io.PipedReader
  • Klasse java.util.concurrent.Exchanger

10 Nebenwirkungen

  • Deadlock
  • Livelock
  • CPU Starvation
  • Lock Starvation

11 Fork / Join Framework

  • Rekursion
  • Klasse java.util.concurrent.ForkJoinTask
  • Klasse java.util.concurrent.RecursiveAction
  • Klasse java.util.concurrent.RecursiveTask
  • Klasse java.util.concurrent.ForkJoinPool

Programmierer, die vertiefte Kenntnisse zu den traditionellen Wegen des Multithreading wie auch dem Concurrency API von Java erwerben wollen

Besuch des folgenden Kurses oder gleichwertige Kenntnisse werden vorausgesetzt:

Download

Fragen zum Kurs

Weiterführende Kurse

Lernen Sie Ihre Trainer kennen