Trwają zapisy do grupy

Szkolenie: Wielowątkowe i asynchroniczne aplikacje w Javie

Szkolenie z programowania wielowątkowego i asynchronicznego w Javie uczy nowoczesnych technik, debugowania, testowania oraz optymalizacji wydajności aplikacji, wykorzystując najnowsze funkcje języka Java i narzędzia JVM

  • Trenerzy praktycy
  • Kameralne grupy

Czas trwania szkolenia:2 dni (16h)

Poziom zaawansowania:

Kod kursu:J/PARA

wydajnoscconcurrency-javaasynchroniczne-aplikacjewielowatkowosc-java

Dostępne terminy szkolenia

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

23 lutego
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

13 kwietnia
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

29 czerwca
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

1 października
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

12 listopada
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

17 grudnia
Trwają zapisy na szkolenieDostępne w BURonline_payments

Trener:

Mateusz Kamiński

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Powiadom o kolejnych terminach

Interesuje Cię szkolenie w innym terminie?

Wielowątkowe i asynchroniczne aplikacje w Javie

Cele szkolenia

  • Szkolenie przygotowuje do samodzielnego projektowania i implementowania aplikacji wielowątkowych oraz asynchronicznych w języku Java z wykorzystaniem nowoczesnych narzędzi i technik

  • Szkolenie uczy identyfikowania i rozwiązywania problemów związanych z bezpieczeństwem wątków, synchronizacją oraz wydajnością kodu w środowisku JVM

  • Szkolenie omawia metody debugowania i testowania aplikacji wielowątkowych, umożliwiając skuteczną analizę i optymalizację działania programów


Dla kogo?

  • Programistów Java z podstawową znajomością języka, chcących rozwinąć umiejętności w zakresie programowania wielowątkowego i asynchronicznego

  • Osób realizujących zadania związane z optymalizacją wydajności i bezpieczeństwa aplikacji Java w środowisku produkcyjnym

  • Specjalistów IT oraz developerów przygotowujących się do pracy z nowoczesnymi technikami współbieżności w Javie


Efekty kształcenia

  • Uczestnik projektuje i implementuje aplikacje wielowątkowe w języku Java

  • Uczestnik analizuje i rozwiązuje problemy związane z synchronizacją wątków

  • Uczestnik stosuje nowoczesne narzędzia do debugowania i testowania kodu

  • Uczestnik wykorzystuje asynchroniczne API oraz wzorce projektowe

  • Uczestnik ocenia wpływ rozwiązań na wydajność aplikacji

  • Uczestnik wdraża dobre praktyki programistyczne w środowisku JVM


Wymagania

  • Podstawowa umiejętność programowania w języku Java


W cenie otrzymasz:

  • Materiały szkoleniowe

  • Certyfikat ukończenia szkolenia

  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program szkolenia

Pobierz program w PDF

Terminologia na przykładzie JVM

  • Programowanie współbieżne, wielowątkowe, asynchroniczne

  • Niebezpieczeństwa związane z wielowątkowymi procesami - wyścigi, deadlock, zagłodzenie, livelock

  • Sekcja krytyczna

  • Cechy wątków w Javie

  • Słowo kluczowe volatile oraz synchronized

  • Zasady działania wielowątkowości w ramach JVM - Java Memory Model

  • Poprawne tworzenie typów Thread-Safe

Tworzenie i koordynacja pracy wątków

  • Standardowe i nowe API tworzenia wątków w Javie

  • Interfejsy funkcyjne zadań realizowanych na wątkach - Runnable / Callable

  • Typ CompletableFuture

  • LockSupport park / unpark vs standardowy Thread.wait

  • Asynchroniczna obsługa zapytań typu REST na przykładzie wbudowanego w JDK HttpClient

Egzekutory

  • Porównanie dostępnych typów egzekutorów

  • Harmonogramowanie zadań asynchronicznych z wykorzystaniem egzekutorów

Synchronizacja wątków z użyciem blokad jawnych i niejawnych

  • proste blokady obiektowe - ReentrantLock, ReadWriteLock, StampedLock

  • Semafor a licznik CountDownLatch

  • CyclicBarrier i Phaser

Kolekcje i strumienie wielowątkowe

  • Podstawowe kolekcje blokujące: ConcurrentHashMap, ConcurrentLinkedDeque/Queue

  • Kolekcje skalowalne i automatycznie sortujące zawartość: ConcurrentSkipListMap, ConcurrentSkipListSet

  • Kolekcje kopiujące zawartość: CopyOnWriteArrayList, CopyOnWriteArraySet

  • Typy kolejek: porównanie interfejs TransferQueue, BlockingQueue wraz z dostępnymi implementacjami

  • Wrappery na istniejące kolekcje: java.util.Collections.synchronized...

  • Strumienie wielowątkowe

  • Zagrożenia płynące z naiwnego używania strumieni wielowątkowych

Wykorzystanie istotnych elementów java.util.concurrent

  • Zastosowanie typów atomowych

  • Framework Fork/Join

  • Typy reaktywne: Flow / Publisher / Subscriber

Wirtualne wątki

  • Porównanie wątków fizycznych i wirtualnych

  • Potencjalne problemy w używaniu wirtualnych wątków

  • Typ ThreadLocal a ScopedValue

  • Structured Concurrency - nowe spojrzenie na programowanie asynchroniczne w Javie

  • Używanie istniejących oraz pisanie własnych podtypów StructuredTaskScope.Joiner

  • Popularne frameworki a wirtualne wątki

Debugowanie / testowanie rozwiązań wielowątkowych

  • Problemy w testowaniu aplikacji wielowątkowych

  • Debugowanie z wykorzystaniem VisualVM / jstack

  • Techniki pisania testów jednostkowych dla kodu wielowątkowego

  • Oficjalne narzędzie od JDK: jcstress

Project reactor (Opcjonalnie)

Autorem szkolenia jest Mateusz Kamiński

Absolwent informatyki Instytutu Informatyki na Wydziale Elektroniki i Technik Informacyjnych Politechniki Warszawskiej. Obecnie pełni rolę Head of Product Team, Technology Evangelist oraz Trenera w firmie Sages, a także Senior Java Engineera i Architekta w Instytucie Podstaw Informatyki PAN. Posiada ponad 12-letnie doświadczenie w tworzeniu różnorodnego oprogramowania na platformie Java (JVM), z wykorzystaniem najpopularniejszych frameworków i bibliotek dostępnych na rynku. Przez wiele lat prowadził…

Wybrane opinie

Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi

4.8
Ikona podpowiedziŚrednia ocen Sages w serwisie Google Ocena pochodzi ze średniej ocen Sages w serwisie Google i nie jest weryfikowana

30.01.2026

Uczestnik szkoleniaJira - organizacja i zarządzanie projektami

Adam NAJMOWICZ

Praktyczna wiedza w praktyce i swietna komunikacja z trenerem

Więcej opinii