22 Passez à la vitesse supérieure avec Visual Studio 2010 et le framework 4.0 en utilisant la Task Parallel Library 08/02/2010 Vincent Lainé MVP C# Refresh.

Slides:



Advertisements
Présentations similaires
Les technologies décisionnelles et le portail
Advertisements

3ème journée nationale de la e-administration
Module 8 : Implémentation d'une stratégie de groupe
GPO Group Policy Object
C#3 et le projet Linq Mitsuru FURUTA
Le déploiement dapplications et la gestion du réseau pédagogiques détablissements scolaires Brice DELONS Consultant manager EXAKIS.
Nos Partenaires Rencontres ASP.NET : Développement Rapide dApplications Web.
Service Software Factory François MERAND Responsable groupe architectes DPE – Division Plateformes & Ecosystème Microsoft France
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
C# 2.0, un an après Mitsuru FURUTA
Nouveautés pour les développeurs Office System Scott Burmester Responsable des programmes PSPS.
Automatisation de Tâches Scenarios
Baptiste ARNAULT, Manel ZERELLI, Thierry SORIANO
Les tests et les logiciels de gestion de tests
Option GIPAD Génie Informatique pour lAide à la Décision.
Copyright © 2004, SAS Institute Inc. All rights reserved. Processus Stockés SAS une perspective analytique Sylvain Tremblay SAS Canada 25 avril 2006.
Santé pubic Plan catastrophe Globalisation de léconomie Agenda vert Emissions Phénomène durbanisation Population viellissante Qualité de service Enjeux.
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
LE BESOIN Saison 1 5 min pour nous convaincre, allez à lessentiel !
ManageEngine ADManager Plus 6
Présentation commerciale
Amélioration de la sécurité des données à l'aide de SQL Server 2005
Sommaire Objectif de Peakup Principes de fonctionnement
ECF 5 PRESENTATION « BULLE APPLICATIVE »
Agenda -Raisons de la migration -Structure d’implémentation -Tour des écrans -Issues -Discussion -Demo live De EIDEL à D.P.A. 31/01/2001.
Quel serveur pour vous?.
BitDefender Enterprise Manager. BitDefender Enterprise Manager – protection centralisée pour votre réseau Principales fonctions Fonctions spéciales (WMI)
< Nom du projet ou de l’entreprise >
Présentation Structures de Données et TDA
JEFYCO Module Marché 17 Décembre Quoi de neuf? Les marchés ne sont plus liés à lexercice JEFYCO en cours Ils intègrent plus finement le nouveau.
Retour d’expérience sur des Télécommunications
1 journée, 5 sessions, 1 réalisation.NET Enterprise Realization Day.
La production informatique sécurisée et simplifiée
Hub’ID, un service de traçabilité RFID opéré Une innovation Hub télécom Démo.
APPLICATIONS MÉTIER COLLABORATIONSTOCKAGEPLATE-FORMEIDENTITÉCOMMUNICATIONSPRODUCTIVITÉ SUR SITE SERVICES DE « CLOUD COMPUTING »
22 Visual Studio Tools et Office 2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Dev Consultant Microsoft France
5 Les progiciels de gestion et les opportunités associées.
PROJET AssetFrame IT ASSET MANAGEMENT Demo.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
2 Le futur de VB et l’asynchronisme [LAN101] 08/02 14h30 Patrice Lamarche GPI
Qu'est-ce qu'un ERP  Outils automatisé pour modéliser les comportements d'une entreprise afin de les rendre plus automatiques.
Programmation Système et Réseau
CAZIER Kévin JACOB Sébastien Réalisée dans le cadre du Projet Pluridisciplinaire Encadré par Mme Martine COQUET Responsable de l’entreprise.
Initiation à la conception des systèmes d'informations
Code Contracts Gilles TOURREAU - MVP C# Architecte .NET / Formateur
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Positionnement : Outil de supervision et d’administration spécialiste Les management packs de l’éditeur et la base de connaissance embarquée Rapidité.
< Nom du projet ou de l’entreprise > < Nom du contact >
Cours MIAGE « Architectures Orientées Services »Henry Boccon-GibodCours MIAGE « Architectures Orientées Services »Henry Boccon-Gibod 1 Architectures Orientées.
10 février 2010 Sylvain Quéméner et Caroline Moulin Consultants
Le déploiement centralisé des postes hétérogènes Septembre 2009 This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike.
PABX, Call Center et CTI Romain PYPE.
La récursivité Mireille Goud HEG Vd AlgSD - Résurisivité.
22 Visual Studio Tools et Office /02/2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Development Consultant Microsoft France.
Les outils collaboratifs en ligne pour une entreprise
LA PRISE EN CHARGE DU TRAVAIL COOPÉRATIF
1 Démo SoftGrid. Le Séquenceur SoftGrid Utilisation d’un « packageur » SoftGrid Possibilité de “séquencer” en ligne de commande (CLI) Existence d’outils.
1 formule et 3 options pour répondre aux besoins de votre organisation
2 Alain METGE SOGETI
Gestion des documents internes avec SQL Server 2005 Date de publication : janvier 2006.
Gérer son parc de postes de travail et serveurs avec System Center Essentials (SCE) 2007.
9 février 2010 Enrique Ruiz Mateos Architecte avant-vente Microsoft
Déploiement d’imprimantes par GPO
Projet de session Par Eve Grenier Dans le cadre du cours SCG Réalisation d’applications en SIG Jeudi le 20 avril 2006.
FACTORY systemes Module 5 Section 1 Page 5-3 Les scripts de traitement FORMATION INTOUCH 7.0.
Avant-projets Dell Confidentiel – Réservé exclusivement aux partenaires de distribution Dell Avantage Dell Avant-projet Dell pour Microsoft ® UC&C Solutions.
Simple, efficace et opérationnelle pour les PME 5 minutes pour découvrir ses.
DWR Jean-Jacques LE COZ. Introduction Projet DWR Framework AJAX Projet Open Source commencé en 2004 Licence GPL (Apache Software License v2) Sponsorisé.
Visual Information Solutions Multithreading. Visual Information Solutions Qu’est-ce que le multithreading ? Un thread est une partie des instructions.
Transcription de la présentation:

22 Passez à la vitesse supérieure avec Visual Studio 2010 et le framework 4.0 en utilisant la Task Parallel Library 08/02/2010 Vincent Lainé MVP C# Refresh IT Solutions

33 Refresh IT Solutions Un éditeur français spécialisé dans les solutions d’automatisation des déploiements à grande échelle de messageries et postes de travail Une société d’experts sur les problématiques de migration de systèmes et les technologies Microsoft Un positionnement historique : Opérer des projets de transformation complexes, de manière automatisée et centralisée, éliminant toute intervention manuelle sur les postes de travail, et sans impact pour l’utilisateur Un positionnement complémentaire : Opérer, de manière simple et rapide, les migrations vers Windows 7 en proposant des scénarios packagés pour les Entreprises de taille moyenne Opérer des migrations de messagerie vers Microsoft Exchange Online Proposer des solutions de maintien en condition opérationnelle des parcs de PC Proposer des solutions logicielles d’inventaires et de télédistribution Accompagnement des clients pour la maitrise du changement et la gestion du lotissement (offre Nolage)

44 Agenda Introduction Task Parrallel Library : Quelques rappels rapide Plinq, Tâches, Collections concourentes Et avec ça ? Migration de linq vers Plinq Utilisation des tâches Analyser les problèmes de blocage Trucs et astuces

55 Introduction Depuis 2 ans les fréquences des processeurs n’augmentent plus. Il ne suffit plus d’attendre la prochaine génération de processeur pour que l’application s’exécute plus rapidement Par contre le nombre de cœurs augmente Comment faire pour utiliser efficacement cette multitude de cœurs ? Une réponse : La TPL !

66 Démo Parce qu’une petite démo vaut mieux qu’une longue introduction …

77 Quelques rappels sur la TPL Plinq Linq mais en plus rapide Tâches « Entité permettant d’exécuter une fonction dans un pool de thread de manière parallèle » Apporte la notion de hiérarchie Distribuée sur les processeurs. Le pool est automatiquement dimensionné pour le nombre de processeurs. Collections concurrentes Collections thread-safe ConcurrentQueue, ConcurrentStack, ConcurrentDictionary, ConcurrentBag, BlockingCollection

88 Démo Exemple d’utilisation de Plinq

99 Exemple d’utilisation de PLinq products = from product in entities.vProductAndDescriptions orderby product.ProductID, product.Culture select product;.AsParallel() var results = (from p in entities.ProductCategory select new { Name = p.Name, ParentName = p.ProductCategory2.Name }); var results = entities.ProductCategory.AsParallel().Select(new Func ((p) => { p.ProductCategory2Reference.Load(); if (p.ProductCategory2 == null) return new Result() { Name = p.Name }; else return new Result() { Name = p.Name, ParentName = p.ProductCategory2.Name }; }));

10 Utilisation des tâches Task/Task : permet l’exécution d’une tâche avec ou sans valeur de retour. TaskScheduler : Classe abstraite effectuant le travail de bas niveau pour l’ordonnancement des tâches Permet définir son propre scheduler TaskFactory : Classe gérant la création de tâches avec les même paramètres Permet de créer des tâches utilisant le même scheduler, les même options et le même token d’annulation CancellationTokenSource/CancellationToken : Permet le support de l’annulation dans les tâches

11 Démo Exemple d’utilisation des tâches

12 Exemple d’utilisation des tâches private TaskFactory _factory; _factory = new TaskFactory( TaskCreationOptions.AttachedToParent, TaskContinationOptions.AttachedToParent); _factory.StartNew(new Action (CopyAndCheckFile), new CopyAndCheckFilesThreadParam() { srcFile = file, destFile = destFile } );

13 Et avec ça ? Il reste la question du débogage des applications Complexe car environnement multiples Nécessite des outils spécifiques VS 2010 ! Visualisation des tâches parallèles Visualisation des threads et pile d’appel Visualisation des blocages inter-thread

14 Démo Débogage d’une application utilisant la TPL

15 Questions ?