Example #1
0
        private void RecuperationSimple()
        {
            Mesures.Clear();
            int nbMesure = CoucheDonnees.GetNbMesure();

            for (int i = 0; i < nbMesure; i++)
            {
                Mesures.Add(CoucheDonnees.GetMesure(i));
            }
        }
Example #2
0
 public EnrichedMesure(Mesures a)
 {
     Speed    = a.Speed.HasValue ? a.Speed.Value : double.NaN;
     Position = new BasicGeoposition()
     {
         Latitude = a.Latitude, Longitude = a.Longitude, Altitude = a.Speed.HasValue ? a.Speed.Value : 0.0
     };
     Id       = a.Id;
     Altitude = Altitude = a.Altitude.HasValue ? a.Altitude.Value : double.NaN;
 }
Example #3
0
        private void RecuperationTPLParallelDispatch()
        {
            Mesures.Clear();
            int nbMesure = CoucheDonnees.GetNbMesure();

            Parallel.For(0, nbMesure, (i) =>
            {
                var mesure = CoucheDonnees.GetMesure(i);
                Application.Current.Dispatcher.BeginInvoke(new Action(() =>
                {
                    Mesures.Add(mesure);
                }));
            });
        }
Example #4
0
        private void RecuperationTPLParallel()
        {
            Mesures.Clear();
            int nbMesure = CoucheDonnees.GetNbMesure();
            ConcurrentBag <Prevision> result = new ConcurrentBag <Prevision>();

            Parallel.For(0, nbMesure, (i) =>
            {
                result.Add(CoucheDonnees.GetMesure(i));
            });

            foreach (var item in result)
            {
                Mesures.Add(item);
            }
        }
Example #5
0
        private void RecuperationTPLParallelTask()
        {
            Mesures.Clear();
            int nbMesure = CoucheDonnees.GetNbMesure();

            List <Task> tasks = new List <Task>();

            for (int i = 0; i < nbMesure; i++)
            {
                tasks.Add(new Task((index) =>
                {
                    var mesure = CoucheDonnees.GetMesure((int)index);
                    Application.Current.Dispatcher.BeginInvoke(new Action(() =>
                    {
                        Mesures.Add(mesure);
                    }));
                }, i));
            }
            tasks.ForEach(t => t.Start());
        }