Estoy pensando en un nuevo factor, pero no sé si el resultado final es simplemente exagerado. Actualmente tengoEstá usando linq en esta situación overkill
IList<myobjecttypebase> m_items;
public int GetIncrementTotal()
{
int incrementTot;
foreach(myobjecttypebase x in m_items)
{ incrementTot += x.GetIncrement(); }
}
¿Sería excesivo y/o menos eficiente de utilizar LINQ para el ParaCada
m_items.ToList().ForEach(x => incrementTot += x.GetIncrement());
¿El elenco ser una sobrecarga significativa aquí?
Gracias por la respuesta completa Guffa. – Andrew
La "ligera sobrecarga" aquí es solo la diferencia entre llamar a un delegado y un código en línea. A menos que la colección sea enorme, o si está sumando muchas colecciones usando esto como base para las opciones de codificación, cae en el área de la optimización prematura. Haga cambios como este solo si las pruebas de rendimiento muestran que obtendrá una mejora significativa en el tiempo total de ejecución. – Richard