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

23.Список, раскрывающийся список, комбинированный список. Файловые операции.

свойств и методов заимствованы у этих компонентов. Существуют пять модификаций компонента, определяемые его свойством style:

csSimple, csDropDown, csDropDownList, csOwnerDrawFixed И csOwner DrawVariabie.

В первом случае список всегда раскрыт, в остальных он раскрывается после нажатия кнопки справа от редактора (рис. 18.7). В модификации csDropDownList редактор работает в режиме отображения выбора и его нельзя использовать для ввода новой строки (в других модификациях это возможно). Модификации csOwnerDrawFixed и csOwnerDrawVariable используются программной прорисовки элементов списка. Используемые для этого свойства и методы полностью совпадают со свойствами и методами TListBox аналогичного назначения.

По мере усложнения ваших программ они будут сохранять и получать информацию, используя файлы. Если вы знакомы с файловыми манипуляциями в языке С, вы сможете использовать подобные методы и в C++. Кроме того, как вы узнаете из этого урока, C++ предоставляет набор классов файловых потоков, с помощью которых можно очень легко выполнять операции ввода и вывода (В/В) с файлами. К концу данного урока вы освоите следующие основные концепции:

Используя выходной файловый поток, вы можете писать информацию в файл с помощью оператора вставки (<<).

Используя входной файловый поток, вы можете читать хранимую в файле информацию с помощью оператора извлечения (>>).

Для открытия и закрытия файла вы используете методы файловых классов.

Для чтения и записи файловых данных вы можете использовать операторы вставки и извлечения, а также некоторые методы файловых классов.

Многие программы, которые вы создадите в будущем, будут интенсивно использовать файлы. Выберите время для экспериментов с программами, представленными в данном уроке. И вы обнаружите, что в C++ выполнять файловые операции очень просто.

24.Создание процесса, создание потока, рабочие функции потока, обмен сообщениями между процессами и потоками.

Функция CreateThread создает для процесса новый поток. Созданный поток должен определить начальный адрес кода, с которого новый поток должен исполняться. Как правило, начальный адрес - это название функции, определенной в коде программы. Эта функция получает единственный параметр и возвращает значение типа DWORD. Процесс может иметь одновременно несколько потоков, выполняющих ту же самую функцию.

Для взаимодействия разных процессов или потоков разных процессов используются:

конвейеры (pipes)

именованные конвейеры (named pipes)

очереди сообщений (message queues)

разделяемая память (shared memory)

Конвейеры - это буфер в ОЗУ, который поддерживает очередь байт (FIFO). ОС располагает двумя системными вызовами для записи и чтения. Ограничение: все процессы должны иметь общего родителя, создавшего конвейер

Именованные конвейеры - разновидность обычного конвейера. Системный вызов создания такого конвейера, записывает присвоенное имя в каталог.

Очереди сообщений - механизм похож на механизм конвейеров, но позволяет обмениваться не байтами, а сообщениями. Каждая очередь имеет уникальное имя. В Unix используются три системных вызова: msgget, msgsnd, msgrsv

Разделяемая память – сегмент физической памяти, общий в виртуальных адресных пространствах двух и более процессов.