Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/06/2013, 06:07
chcma
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Parallel.For me tarda mas que un For Normal, ¿Por que?

Hola Foreros !!!

Veréis, tengo el siguiente código de Ejemplo, dentro del Load de un WinForm:

Código:
            DateTime dateNow = DateTime.Now;




            //for (int i = 0; i < 100000; i++)
            //{
            //    listBox1.Items.Add("Elemento " + i.ToString());
            //}

            Parallel.For(0, 100000, i =>
            {
                this.Invoke((MethodInvoker)delegate
                {
                    listBox1.Items.Add("Elemento " + i.ToString());
                });
            });



            TimeSpan diffDate = DateTime.Now.Subtract(dateNow);

            MessageBox.Show(diffDate.TotalSeconds.ToString());

Cuando comento el bucle del Parallel.For me tarda unos 3.6 segundos.

Cuando lo ejecuto con el For normal, tarda 3.1 segundos.

¿Saben por que es esto?

Suponía que cuando usas todos los procesadores con la PTL iba todo más deprisa...

Mi proyecto está puesto para que se ejecute en X64, por supuesto.
__________________
Charlie.