У меня есть следующий фрагмент кода, который работает в цикле.BitmapPalette Недостаточно памяти исключение
public void Test(Bitmap bmp)
{
FormatConvertedBitmap fBitmapSource = new FormatConvertedBitmap();
PngBitmapEncoder pngBitmapEncoder = new PngBitmapEncoder();
BitmapImage bi = new BitmapImage();
using (MemoryStream ms = new MemoryStream())
{
bmp.Save(ms, ImageFormat.Png);
bmp.Dispose();
bmp = null;
bi.BeginInit();
bi.StreamSource = ms;
bi.EndInit();
BitmapPalette pallete = new BitmapPalette(bi, 256);
...
Последняя строка
BitmapPalette pallete = new BitmapPalette(bi, 256);
Иногда бросает следующее исключение
Insufficient memory to continue the execution of the program.at System.Windows.Media.Imaging.BitmapPalette..ctor(BitmapSource bitmapSource, Int32 maxColorCount)
Любые идеи? У меня явно хватает памяти для продолжения исполнения.
Уверены ли вы, что у вас «явно» достаточно? – MoonKnight
Вы говорите, что этот код работает в цикле - возникает ли ошибка при первом проходе через цикл или позже? Если позже, сколько проходит через шаблон цикла перед исключением? – Oliver
Killercam: У меня явно хватает памяти. – user510799