Skip to content

Ошибки при закрытии ПотокВПамяти #1713

Description

@Mr-Rm
  1. Закрытие потока, полученного из ПолучитьПотокТолькоДляЧтения(), закрывает и базовый поток:
Поток = Новый ПотокВПамяти(16);
ПотокЧтения = Поток.ПолучитьПотокТолькоДляЧтения(); 
ПотокЧтения.Закрыть();
БДД = ПолучитьБуферДвоичныхДанныхИзСтроки("123");
Поток.Записать(БДД,0,3); 
Поток.Закрыть();

Ошибка в строке: 5 / Внешнее исключение (System.ObjectDisposedException): Cannot access a closed Stream.}
Поток.Записать(БДД,0,3);

  1. В 1С после закрытия потока возможен вызов ЗакрытьИПолучитьДвоичныеДанные(), в том числе повторный
    (не указано явно в документации)
Поток = Новый ПотокВПамяти(16);
ПотокЧтения = Поток.ПолучитьПотокТолькоДляЧтения(); 
БДД = ПолучитьБуферДвоичныхДанныхИзСтроки("123");
Поток.Записать(БДД,0,3); 
Поток.Закрыть();
Рез = Поток.ЗакрытьИПолучитьДвоичныеДанные(); // == 31 32 33
// и ещё раз
Поток.Закрыть();
Рез2 = Поток.ЗакрытьИПолучитьДвоичныеДанные();  // == 31 32 33

Ошибка в строке: 6 / Внешнее исключение (System.ObjectDisposedException): Cannot access a closed Stream.}
Рез = Поток.ЗакрытьИПолучитьДвоичныеДанные();

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions