Kod: JVA-071
Czas trwania: 12 godzin
Czas trwania: 12 godzin
Opis szkolenia
Na tym szkoleniu dowiesz się, jak korzystać z zajęć z pakietu java.util.concurrent. Przyjrzymy się im jeden po drugim i pokażemy, jak używać prawie każdej klasy pakietu z konkretnymi przykładami. Dowiesz się, jak używać zsynchronizowanych kolekcji, wykonawców, atomów i nie tylko.To szkolenie jest drugą częścią naszego cyklu 3 kursów poświęconych wielowątkowości. Pozostałe dwa obejmują podstawową wielowątkowość (wątki, synchronizację, monitory itp.) Oraz programowanie asynchroniczne i Framework ForkJoin.
Plan szkolenia
Wartości Zmienne i Atomowe- Wydajność dostępu do pamięci
- Model pamięci procesora
- Kompilator i procesor
- Model pamięci Java
- Zmienne słowo kluczowe
- Algorytm CAS
- Odniesienia atomowe
- Przykład licznika atomowego
Kolekcje
- Problem z zagubioną wkładką (aktualizacją)
- Zsynchronizowane kolekcje
- Biblioteka współbieżna
- Równoczesne kolekcje
- Queue i Deque
- BlockingQueue
Zamek i semafor
- Interfejs blokady
- Stan w zamkach
- ReadWriteLock
- Interfejs semafora
Synchronizatory
- Wprowadzenie - gdzie umieścić semafor, gdzie synchronizator
- CountDownLatch
- TransportTyconTutor - pełny przykład wykorzystania synchronizatorów i semaforów!
- CyclicBarrier
- Phaser
- Fazy fazera i tutor
Framework wykonawczy
- Dlaczego potrzebujemy ExecutorFramework
- Executor i ExecutorService
- Pula wątków
- Planowanie zadań
- Uruchomione zadania
- Zatrzymywanie zadań
- Przyszły interfejs
Przechowywanie danych w Threads
- Udostępnianie uruchamialnych obiektów między wątkami
- Zastępowanie wartości w obiektach
- ThreadLocal Store
Obsługa wyjątków
- Wyjątki w aplikacji wielowątkowej
- Obsługa wyjątków za pomocą UncatchingExceptinoHandler
Cele
- Poprawienie umiejętności programowania w języku Java
Grupa docelowa
- Młodsi i średniozaawansowani programiści Java