ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 29.11.2023
Просмотров: 41
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Контрольные вопросы к лекции №15
-
Какое отношение используется для создания собственного класса потока на основе конструкторского класса из объектной библиотеки?
Если конструкторский класс удовлетворяет требованиям достаточности заложенной в него функциональности, то он используется напрямую. Если же его функциональности недостаточно, то на его основе строится собственный класс, находящийся с ним в отношении «обобщение».
-
Какие основные конструкции используются при разработке многопоточных приложений?
К конструкторским классам для организации многопоточных приложений в библиотеке Qt относятся следующие:
- QThread — базовый класс потока,
- QTimer — милисекундный таймер,
- QWaitCondition — синхропримитив «Условная переменная»,
- QSemaphore — синхропримитив «Семафор»,
- QMutex — синхропримитив «Мьютекс».
-
В чем суть синхронной схемы?
Пусть вычислительные процессы (это будут потоки или, как говорят еще, нити), исполняемые программой, могут выполняться параллельно так, что их рабочие циклы синхронизированы своим началом по времени. При этом ничего не будем говорить об идентичности алгоритмов этих рабочих циклов. Из этого будет следовать, что время исполнения рабочего цикла каждого из потоков будет отличаться друг от друга, без потери общности. Эти потоки взаимодействуют друг с другом, в противном случае будет исполняться в одном процессе множество независимых программ. Пусть это взаимодействие сводится к тому, на начало рабочего цикла каждого потока должны быть вычислены общие или/и индивидуальные данные, получаемые из всех потоков на конец их рабочего цикла.
Кто будет готовить эти данные? Очевидно, что должен быть какой-то управляющий рабочий процесс с периодическим рабочим циклом, длительность которого больше длительности самого длинного рабочего цикла потоков.
-
Какие синхропримитивы используются в синхронной схеме?
- класс QWaitCondition — синхропримитив, позволяющий синхронизировать запуск рабочих циклов потоков, находящихся под его управлением,
- класс QSemaphore — синхропримитив, который будет использоваться для обеспечения гарантированно корректного расчета исходных данных для каждого рабочего цикла синхронизированных потоков.
-
В чем суть асинхронной схемы?
Примером асинхронной схемы является реализация системы, описываемой классической моделью сетевого графика.