T>>речь ж не о скорости, а о том, что программа принципиально работает различно в зависисмости лишь от небольшой разницы в размере данных: 85к и меньше — не работает, 85к и больше(это даже не один мегабайт, карл!) — работает
A>На стеке тоже точное количество свободного места: буфер байтом меньше ― всё работает, байтом больше ― всё вылетает к чертям. Ошибка в индексе массива всего на единицу вызывает IndexOutOfRangeException. Замена +1 на -1 может перевернуть изображение в окне вверх ногами и т.д. Наверняка можно придумать такой специальный сценарий, где OutOfMemory будет вылетать или не вылетать в зависимости от длины имени какой-нибудь переменной в коде.
это было бы справедливо, если бы в .NET не было так называемого автоматического управления памяти, но оно якобы есть!