El sistema en el que trabajo aquí fue escrito antes de .net 2.0 y no tenía el beneficio de los genéricos. Eventualmente se actualizó a 2.0, pero ninguno de los códigos fue refactorizado debido a restricciones de tiempo. Hay varios lugares donde el código usa ArraysLists, etc. que almacenan cosas como objetos.Genéricos vs. Matriz Listas
Desde la perspectiva del rendimiento, ¿qué importancia tiene cambiar el código al uso de genéricos? Sé desde una perspectiva de rendimiento, boxeo y desempaquetado, etc., que es ineficiente, pero ¿cuánto de la ganancia de rendimiento habrá realmente por cambiarla? ¿Los genéricos son algo para usar de manera progresiva, o hay suficiente cambio en el rendimiento que se debe hacer un esfuerzo de conciencia para actualizar el código anterior?
Investigue la documentación sobre genéricos y su utilidad al usar structs, y verá qué tiene que ver el boxeo con eso. (Sugerencia: no puede obtener un puntero de objeto a una variable de pila) – Guvante