Java, programmation multithread

Durée totale

Java, programmation multithread

ORSYS
Logo ORSYS

Astuce: besoin de plus d'informations sur la formation? Téléchargez la brochure!

Dates et lieux de début
Il n'y a pas de dates de débuts connues pour ce produit.

Description

Depuis plus de 46 ans, ORSYS accompagne les entreprises et les organisations en les aidant à améliorer leurs performances et à réussir leurs transformations digitale, managériale, commerciale et organisationnelle. Au moyen d’une offre multimodale et actualisée en permanence qui repose sur 2 300 formations à travers 40 domaines d’expertise, dispensée en inter ou intra entreprise, en présentiel ou en classe à distance.

En complément, une bibliothèque de 600 modules e-learning est disponible.

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À l’issue de la formation, le participant sera en mesure de :

  • 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…

Lisez la description complète ici

Foire aux questions (FAQ)

Il n'y a pour le moment aucune question fréquente sur ce produit. Si vous avez besoin d'aide ou une question, contactez notre équipe support.

Vous n'avez pas trouvé ce que vous cherchiez ? Voir aussi : Java, Excel, XML/XSLT, Développement mobile et Unified Modeling Language (UML).

Depuis plus de 46 ans, ORSYS accompagne les entreprises et les organisations en les aidant à améliorer leurs performances et à réussir leurs transformations digitale, managériale, commerciale et organisationnelle. Au moyen d’une offre multimodale et actualisée en permanence qui repose sur 2 300 formations à travers 40 domaines d’expertise, dispensée en inter ou intra entreprise, en présentiel ou en classe à distance.

En complément, une bibliothèque de 600 modules e-learning est disponible.

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À l’issue de la formation, le participant sera en mesure de :

  • 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


Public concerné

Développeurs, architectes logiciels et chefs de projets.
Prérequis

Connaissances de base en Java et de l'utilisation d'un IDE (Eclipse, IntelliJ...).Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant  ce test.
Programme de la 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.
Rester à jour sur les nouveaux avi
Pas encore d'avis.
  • Demander des informations à propos de cours. Dorénavant, nous recevrez aussi une notification lorsque qu'un autre utilisateur partage son avis. C'est un bon moyen de vous encourager à continuer d'apprendre!
  • Voir les produits similaires avec des avis: Java.
Partagez vos avis
Avez-vous participé à cours? Partagez votre expérience et aider d'autres personnes à faire le bon choix. Pour vous remercier, nous donnerons 1,00 € à la fondation Stichting Edukans.

Il n'y a pour le moment aucune question fréquente sur ce produit. Si vous avez besoin d'aide ou une question, contactez notre équipe support.

Recevoir une brochure d'information (gratuit)

(optionnel)
(optionnel)
(optionnel)
(optionnel)
(optionnel)

Vous avez des questions?

(optionnel)
Nous conservons vos données personnelles dans le but de vous accompagner par email ou téléphone.
Vous pouvez trouver plus d'informations sur : Politique de confidentialité.