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.