IConsequentDataStorageOutput: различия между версиями
м |
|||
Строка 7: | Строка 7: | ||
{{sa_list_end}} | {{sa_list_end}} | ||
Блоки данных накопителя адресуются последовательно, один-за другим. Однородность данных и произвольный доступ не | Блоки данных накопителя адресуются последовательно, один-за другим. Однородность данных и произвольный доступ не гарантируются. | ||
При наличии множества потоков ввода/вывода из накопителя изменения, выполненные с использованием одного экземпляра потока могут приводить к изменениям в адресации, выполняемой другими экземплярами. | При наличии множества потоков ввода/вывода из накопителя изменения, выполненные с использованием одного экземпляра потока могут приводить к изменениям в адресации, выполняемой другими экземплярами. |
Версия 18:27, 14 августа 2019
Интерфейс записи в накопитель последовательно расположенных данных.
Метод | Описание |
---|---|
Write | Создает поток записи в накопитель данных. |
Класс | Описание |
---|---|
Базовый интерфейс накопителя данных. |
- См. также
IConsequentDataStorageInput Интерфейс накопителя последовательно расположенных данных только для чтения. IConsequentDataStorage Интерфейс для чтения и записи в накопитель последовательно расположенных данных. ConsequentDataStorageOutputRef Ссылочный адаптер, определенный над интерфейсом IConsequentDataStorageOutput. ConsequentDataStorageOutputOwn Владеющий адаптер, определенный над интерфейсом IConsequentDataStorageOutput.
Блоки данных накопителя адресуются последовательно, один-за другим. Однородность данных и произвольный доступ не гарантируются.
При наличии множества потоков ввода/вывода из накопителя изменения, выполненные с использованием одного экземпляра потока могут приводить к изменениям в адресации, выполняемой другими экземплярами.
На рисунке справа показана возможная реализация интерфейса IConsequentDataStorageOutput. Чтение, осуществляемое через интерфейс IConsequentDataStorageInput или IConsequentDataStorage, реализуется с использованием двух разных потоков чтения - is1 и is2 - но ассоциированных с одной и той же реализацией накопителя последовательных данных. Сначала осуществляется чтение с использованием is1, затем - is2, затем - снова is1. Аналогично осуществляется запись - с использованием двух разных потоков записи - os1 и os2. Эти потоки агрегируются той же реализацией, что и потоки чтения. То, к какому блоку данных осуществляется доступ, определяется очередностью чтения и записи.