Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы и ответы к письм. мод. по Делфи.doc
Скачиваний:
4
Добавлен:
18.07.2019
Размер:
271.36 Кб
Скачать

Поясните понятие потока и объясните преимущество использования потоков по отношению к традиционным методам чтения/записи данных

Ответ: Потоком называют программный интерфейс к некоторому устройтву ввода/вывода. Абстрактное устройство представлено в Delphi классом TStream, а наследники этого базового потокового класса реализуют интерфейс, заявленный в нем, и поддерживают методы чтения и записи

информации для конкретного устройства.

Можно назвать следующие преимущества использования потоков по отношению к традиционным методам ввода/вывода:

существенное снижение сложности программного продукта за счет объектно-ориентированного подхода в результате использования единого интерфейса к разным устройствам ввода/вывода;

• повышение гибкости программного продукта в смысле изменений, так как логика процессов ввода/вывода разбивается на две части — манипуляции с самим потоком (его создание и разрушение) и непосредственные операции ввода/вывода, то есть операции с информацией;

дополнительные возможности временного хранения информации в памяти с возможностью ее быстрого сохранения на любой носитель за счет

совместимости разных потоков между собой.

Назовите потоковые классы, предназначенные для работы с реальными устройствами

Ответ: В стандартной поставке Delphi, кроме базового класса TStream, реализованы следующие потоковые классы:

» TFileStream, предназначенный для работы с файлами;

» TStringStream, предназначенный для работы со строками, хранимы-

ми в оперативной памяти;

» TMemoryStream, предназначенный для работы с динамической памятью;

» TBlobStream, предназначенный для работы с двоичными BLOB-полями

баз данных;

» TWinSocketstream, предназначенный для работы с сетевыми соеди-

нениями;

* TOleStream, предназначенный для ввода/вывода информации в OLE-

объектах.

Файловые потоки

Ответ: Файловые потоки — это потоки, связанные с файлами. Файловые

потоки реализованы с помощью класса TFileStream. При создании эк-

земпляров данного класса в конструктор передаются параметры, опреде-

ляющие название файла, с которым связан поток, режим, в котором файл

должен быть открыт (для чтения, записи, или в смешанном режиме), а также

способ разделения файла с другими приложениями (другим приложениям

запрещено считывать информацию из данного файла, записывать инфор-

мацию в файл, считывать и записывать, либо разрешены все действия).

Расскажите о потоках, построенных

на основе оперативной памяти

Ответ: Класс TMemoryStream представляет собой поток для временного

хранения информации в оперативной памяти. Такие потоки могут исполь-

зоваться для временного хранения информации и передачи ее в другой

поток для записи на какой-либо носитель.

Удобство такого метода хранения информации заключается в совмести-

мости потоков TMemoryStream с другими потоками, в результате чего ин-

формация, хранимая в этом потоке, может быть легко скопирована в дру-

гой поток, например с помощью метода CopyFrom.

Интересной особенностью потоков TMemoryStream является возможность

сохранения информации в файл и чтения ее из файла с помощью методов

SaveToFile и LoadFromFile.