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.

Informations pratiques

Durée 2 jours
Format Présentiel / Distanciel
Participants 8 personnes max
Certificat Attestation de formation

Public cible

Prérequis

Prérequis obligatoires

  • Connaissance pratique de Java

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.