LoadingStreamBehavior

Перечисление LoadingStreamBehavior

Поток (Stream), передаваемый в метод, рассматривается как Binary Large Object (BLOB) (см. описание IBlobManagementOptions). Значения этого перечисления определяют, как следует обращаться с потоком, когда он передаётся в метод. В зависимости от требований могут быть приняты разные решения для обеспечения наиболее эффективного поведения.

public enum LoadingStreamBehavior

Значения

ИмяЗначениеОписание
ReadStreamAndRelease0Поток будет прочитан до конца и затем освобождён, то есть будет гарантировано, что этот поток больше не будет использоваться экземпляром IPresentation в будущем. Его можно закрыть клиентским кодом или использовать иным способом.
KeepLocked1Поток будет заблокирован внутри объекта IPresentation, то есть право собственности на поток будет передано. Объект IPresentation будет отвечать за корректное освобождение потока, когда сам будет уничтожен. Такое поведение крайне полезно, когда необходимо сериализовать большой файл BLOB (например, большой видео- или аудиофайл — см. описание IBlobManagementOptions) и нужно избежать загрузки этого файла в память или других проблем с производительностью. Вы можете просто открыть FileStream для этого файла и передать его в метод, выбрав поведение LoadingStreamBehavior KeepLocked.

См. также