menu logo orsys formation
NOUS CONTACTER - +33 (0)1 49 07 73 73
NOUS CONTACTER - 📞 +33 (0)1 49 07 73 73    espace pro ESPACE PRO     inscription formation orsys S'INSCRIRE     drapeau francais   drapeau anglais
Nos domaines de formation :
Toutes nos formations Java, Java EE

Formation Java, programmation multithread

Stage pratique
New
Durée : 4 jours
Réf : JQT
Prix  2019 : 2480 € H.T.
Pauses et déjeuners offerts
  • Programme
  • Participants / Prérequis
  • Intra / sur-mesure
Programme

La programmation multithread en Java prend de plus en plus d’importance grâce à la généralisation des architectures multiprocesseurs : elle simplifie la conception et le développement des applications comportant un parallélisme intrinsèque et offre des solutions efficaces aux problèmes de performance.

Objectifs pédagogiques

  • Maîtriser les modèles de programmation multithread et les librairies standards correspondantes
  • Connaître les principales structures de données adaptées à la programmation multithread
  • Connaître les principaux bugs et avoir un aperçu des solutions
  • Connaître les outils de test et débogage
  • Comprendre les liens entre la programmation multithread et les performances
PROGRAMME DE FORMATION

Les modèles, les interfaces et classes de programmation multithread

  • Les concepts de base : tâche, ressource d’exécution, activité, service d’exécution, futur.
  • Les différentes mises en œuvre des concepts (Runnable, Callable<T>, ExecutorService, Future<T>…).
  • Les exceptions non catchées, les groupes de threads.
  • Le futur complétable.

Travaux pratiques
Programmation d’une application combinant les différents modèles.

Les contraintes sur le comportement correct des activités

  • Quelques méthodes formelles de spécifications.
  • Une méthode semi-formelle de spécification.
  • La mise en œuvre des spécifications.

Travaux pratiques
Utilisation de méthodes formelles de spécifications.

La synchronisation et communication des threads

  • Les status "synchronized", "wait", "notify" et la programmation de moniteurs.
  • Les interfaces et classes de synchronisation : verrous, sémaphores, les barrières cycliques.
  • Les queue.

Travaux pratiques
Utilisation des interfaces et classes de synchronisation.

L'exécution de tâches en parallèle

  • Les ExecutorService.
  • Le modèle fork/join (RecursiveTask<T>, RecursiveAction, ForkJoinPool).

Travaux pratiques
Utilisation des services d’exécution et du modèle fork/join.

Les structures de données dédiées à la programmation multithread

  • Les collections spécialisées.
  • Le stockage local des données de thread : ThreadLocal<T>.
  • Les classes Atomic.

Travaux pratiques
Utilisation des structures de données.

Les threads et les performances

  • L’impact de la création de threads.
  • L’impact de la synchronisation.
  • L'impact des caches mémoire.
  • Les threads et les IO, les BD et le graphique.
  • Les threads et l'ordonnancement.

Travaux pratiques
Optimisation des programmes.

Les modèles alternatifs

  • Les modèles asynchrones : JReact.
  • Les modèles d'acteurs (Akka Actor4J...).
  • Les modèles réactifs synchrones.

Outils dédiés au développement de programmes concurrents

  • JConsole, jstack.
  • La librairie JArmus.
  • La logique temporelle de Lamport : TLA+.
  • Les erreurs courantes : famine (contention), endormissement (dormancy), interblocage (deadlock), terminaison prématurée.
Participants / Prérequis

» Participants

Développeurs, architectes logiciels et chefs de projets.

» Prérequis

Connaissances de base en Java et de l'utilisation d'un IDE (Eclipse, IntelliJ...).
Intra / sur-mesure

Demande de devis intra-entreprise
(réponse sous 48h)

Vos coordonnées

En cochant cette case, j’atteste avoir lu et accepté les conditions liées à l’usage de mes données dans le cadre de la réglementation sur la protection des données à caractère personnel (RGPD).
Vous pouvez à tout moment modifier l’usage de vos données et exercer vos droits en envoyant un email à l’adresse rgpd@orsys.fr
En cochant cette case, j’accepte de recevoir les communications à vocation commerciale et promotionnelle de la part d’ORSYS Formation*
Vous pouvez à tout moment vous désinscrire en utilisant le lien de désabonnement inclus dans nos communications.
* Les participants inscrits à nos sessions de formation sont également susceptibles de recevoir nos communications avec la possibilité de se désabonner à tout moment.

Pour vous inscrire

Cliquez sur la ville, puis sur la date de votre choix.
[-]
PARIS

Horaires

Les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45.
Pour les stages pratiques de 4 ou 5 jours, les sessions se terminent à 15h30 le dernier jour.
linkedin orsys
twitter orsys
it! orsys
instagram orsys
pinterest orsys
facebook orsys
youtube orsys