Formation Java concurrency
Programmation parallèle et concurrente en Java
En programmation Web, avec Java EE ou Spring Framework, l’essentiel de l’aspect multi-tâches est caché au développeur. Mais lorsqu’il s’agit de développer des batchs ou des traitements massifs, il faut souvent revenir aux racines des Threads et des fonctionnalités du JDK.
Dans cette formation, on commence pas manipuler les threads de façon brute, comme en 1999, puis on voit les différentes classes et possibilités offertes par le JDK pour faciliter le développement.
Public cible
Prérequis
Prérequis obligatoires
- Connaissance pratique de Java
Connaissances recommandées
Environnement technique
Outils de développement
Configuration système
Programme détaillé
Introduction
-
Les bénéfices des traitements parallèles
-
Les risques liés aux accès concurrents
Premiers pas
-
La classe Thread
-
Les tâches Runnable
-
Les techniques de blocage de thread
-
Comment interrompre un thread ?
-
La gestion des erreurs
Gestion moderne des threads
-
Le framework Executor
-
Les pools de threads
-
Les tâches Callable, le Future
-
L’interruption de Threads gérés
-
Le pool de Fork / Join
-
La planification de tâches
-
La programmation de style reactive, avec CompletableFuture
Accès concurrents
-
Problèmes d’accès concurrent aux données et ressources
-
Les attributs
volatile
-
Le dead locks, leur détection
-
Les objets atomiques
-
Les techniques avancées de blocage : barrières et loquets
-
Les collections concurrentes
-
Les collections et les streams parallèles
-
Les traitements parallèles avec les tableaux
Objectifs et résultats attendus
Compétences acquises
Livrables formation
- Code source de tous les travaux pratiques
- Projet final complet et fonctionnel
- Slides de formation en PDF
- Notes techniques
- Ressources et liens utiles
Prêt à maîtriser ?
Contactez-moi pour organiser cette formation pour votre équipe ou vous inscrire à la prochaine session.
Formation disponible en présentiel ou en distanciel.
Adaptation du contenu possible selon vos besoins spécifiques.