En C#, ¿hay alguna reducción significativa en la asignación de memoria al pasar una referencia DateTime como parámetro a una función en lugar de pasarla por valor?¿Puedo reducir la asignación de memoria pasando el parámetro DateTime por referencia en C#?
int GetDayNumber(ref DateTime date)
vs
int GetDayNumber(DateTime date)
El código dentro de la función no es la modificación de la fecha en cualquier caso.
¿Alguna razón por la que no usaría 'date.Day'? –
¿Qué significante es significativo? Un objeto DateTime no es exactamente un hogger de memoria. Lo más probable es que vaya en la pila o en un registro de todos modos, e incluso cuando pasa una referencia, sus datos de aprobación (es decir, la referencia) que pueden tener el mismo tamaño (no puede ser mucho más pequeño porque DateTime es muy pequeño). –
Esta función hace algo diferente a date.Day Esta función se llama millones de veces, por lo que cualquier mejora en la misma sería excelente.Supongo que esa diferencia en la asignación de memoria en la pila es el "Tamaño de fecha y hora" - "Tamaño de referencia" – jeroko