From Patrick Hynds (repro in link above):
If you try to allocate an array with a size range between 0x027fefbd and 0x027fffec, the framework throws exceptions. This range corresponds to memory block of little under 40MB. But if allocate a buffer smaller than or larger than this range, then every thing is fine. So the following call will fail.
Byte[] test = new Byte[0x027ffc22];
It looks like there are different algorithms for big memory block allocation. Is there something special about this range? Anyone? Note: I'm running this on a box with 512megs. Does this behave different on a box with more or less?
UPDATE: Until someone gives an good explaination, Dejan has added this to the .NET Bugs Registry...
Scott at DevReach in Bulgaria in October
Developer Stand up Comedy - Coding 4 Fun
TechDays/DevDays Netherlands and Belgium:
Posts by Category Posts by Month
Greatest Hits Dev Tools List