Comprimento máximo de byte []?

Estou tentando criar uma matriz debytes cujo comprimento éUInt32.MaxValue. Essa matriz é essencialmente um pequeno banco de dados na memória (ish):

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

Na minha máquina, no entanto, em tempo de execução, recebo umaSystem.OverflowException com "Operação aritmética resultou em um estouro".

Qual é o problema? Preciso usar umunsafe bloquear emalloc? Como eu faria isso em c #?

questionAnswers(4)

yourAnswerToTheQuestion