Longitud máxima del byte []?

Estoy tratando de crear una serie debytes cuya longitud esUInt32.MaxValue. Esta matriz es esencialmente una base de datos en memoria pequeña (ish):

byte[] countryCodes = new byte[UInt32.MaxValue];

En mi máquina, sin embargo, en tiempo de ejecución, obtengo unSystem.OverflowException con "La operación aritmética resultó en un desbordamiento".

¿Cual es el trato? ¿Necesito usar ununsafe bloque ymalloc? ¿Cómo haría eso en C #?

Respuestas a la pregunta(4)

Su respuesta a la pregunta