Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Слетает позиция потока при вызове методов объекта ЧтениеДанных в отладчике #1409

Open
Bayselonarrend opened this issue May 28, 2024 · 0 comments

Comments

@Bayselonarrend
Copy link

Bayselonarrend commented May 28, 2024

Опишите ошибку
Позиция целевого потока ЧтенияДанных из ДвоичныхДанных слетает до 64 в отладчике (VSC) при вызове метода Прочитать() и ЦелевойПоток().ТекущаяПозиция(). При этом, при выполнении скрипта через CL все нормально. Также не возникает такая проблема (ни в отладчике, ни в CL), если чтение данных основано на ФайловыйПоток

В отладчике - значения одинаковые

image
image

В CL - значения разные
image

Воспроизведение ошибки

  1. Создать ЧтениеДанных на основе ДвоичныхДанных (размер данных в примере ~1,5 GB)
  2. Прочитать некоторую часть этих данных через ЧтениеДанных.Прочитать(РазмерЧасти);
  3. Попытаться определить позицию потока через ЧтениеДанных.ИсходныйПоток().ТекущаяПозиция() или получить двоичные данные из ЧтениеДанных.Прочитать(РазмерЧасти).ПолучитьДвоичныеДанные()
РазмерЧасти  = 268435456;
ДвоичныеДанные = Новый ДвоичныеДанные("D:\GD\Мой диск\3.zip");
ЧтениеДанных   = Новый ЧтениеДанных(ДвоичныеДанные);

Для Н = 0 По 5 Цикл
	Сообщить(ЧтениеДанных.Прочитать(РазмерЧасти).ПолучитьДвоичныеДанные());
	А = ЧтениеДанных.ИсходныйПоток().ТекущаяПозиция();
	Сообщить(А);
КонецЦикла;

Ожидаемое поведение
Позиция должна равняться числу прочитанных байт, вызов метода ПолучитьДвоичныеДанные из результата чтения не должно возвращать одни и те же данные при чтении в цикле

Окружение

  • ОС: Windows 10
  • Версия: 1.9.0.6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants