Лабораторная работа №7 Приоритеты потоков




Скачать 20.76 Kb.
НазваниеЛабораторная работа №7 Приоритеты потоков
Дата19.12.2012
Размер20.76 Kb.
ТипЛабораторная работа
Лабораторная работа № 7

Приоритеты потоков


Цель работы: исследовать значение приоритета потоков для их синхронизации в системе с псевдопараллельным режимом работы.


Задание1.

Разработайте программу сортировки чисел. Программа должна удовлетворять следующим требованиям:

  • Должны быть реализованы процедуры сортировки пузырьком, вставкой, и быстрой сортировки.

  • Размер выборки для сортировки должен задаваться пользователем.

  • Должен быть реализован режим отрисовки процесса сортировки.

  • Пользователь должен иметь возможность замедлять и останавливать сортировку.

  • Все три сортировки должны работать одновременно и над одинаковым набором входных данных.

  • Каждая сортировка должна отрисовываться в отдельном окне.


Для отрисовки сортировки можно использовать вызов SetPixel: перед обменом местами двух элементов сначала стираем соответствующие точки, закрашивая их цветом фона, а после обмена – рисуем заново. Вызов SetPixel также играет роль небольшой задержки во времени.

Поскольку размер выборки будет меняться, целесообразно использовать динамические массивы. Для этого используйте операторы new и delete. Для задания начальных значений используйте генератор случайных чисел rand(): он возвращает значение от 0 до MAX_RAND.



Как создать новое окно?

Окно проще всего создать на основе шаблона – ресурса окна. Для добавления нового шаблона выберите вкладку Resources, выберите раздел Dialog, кликните на нем правой кнопкой мыша и выберите New dialog. Добавится новый шаблон диалога с идентификатором IDD_DIALOGxxx, где ххх – некоторое число.


Теперь в основной программе надо объявить переменную типа Cdialog, и вызвать метод Create для его инициализации, а затем – метод Show для отображения на экране:


CDialog MyDialog;

MyDialog.Create(идентификатор ресурса диалога);

MyDialog.Show(SW_SHOW);


Чтобы окно не исчезло сразу после выхода из функции, переменную MyDialog надо сделать глобальной, а метод Create вызывать в функции OnInitDialog главного окна.

Для изменения размера окна и положения на экране используйте метод MoveWindow.

Примерный вид интерфейса показан на рисунке:





Задание 2.

Установите приоритет каждого потока.

Приоритет потока устанавливается при помощи функции SetThreadPriority:

SetThreadPriority(дескриптор_потока, величина_приоритета);

Дескриптор потока – величина типа HANDLE, возвращаемая при вызове CreateThread. Величина приоритета может принимать значения 0, 1, 2, 15.

Попробуйте определить самостоятельно, что происходит при установке того или иного приоритета. Попробуйте также определить значения приоритета, вызывающие синхронное окончание работы сортировок.

Похожие:

Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа Установка и настройка 6 Лабораторная работа Демонстрационный проект 7 Упражнение 1: Работа с основной схемой проекта 7 Упражнение 2: Работа со схемой «Резервуарный парк»
Разработка систем диспетчерского контроля и управления с использованием Infinityscada 4
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа. Получение и свойства оксидов, гидроксидов и солей
Лабораторная работа. Ряд напряжений металлов. Гальванические элементы. Электролиз юююююю
Лабораторная работа №7 Приоритеты потоков iconТематическое планирование биология, 6 класс
Морфология листа (лабораторная работа) 12. Строение растительного организма. Клетки и ткани 13. Типы растительных тканей (Лабораторная...
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа №1 (одномерные массивы) 27
Лабораторная работа №6 (статические массивы, знакомство с графическим режимом. Возможно будет изменена) 49
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа №5. Эксперимент лабораторная работа №6 Раздел II. Эмпирические исследования познавательных процессов. Ощущения и восприятие лабораторные работы №7-9: Методика «Специфика восприятия»
Цель: Выявление типов поведения студентов (коллег) в дискуссии (наблюдение по схеме Р. Бейлза)
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа №1 Изучение автоматической телеграфной станции ат-пс-пд лабораторная работа №2 Изучение телеграфного коммутационного сервера «Вектор-2000»
Рецензент – зам начальника Гомельской дистанции сигнализации и связи Белорусской железной дороги В. И. Прокопюк
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа Правила работы с вычислительной установки Лабораторная работа Работа с клавиатурой
Лабораторный практикум по информатике представляет собой учебно-практическое издание для студентов педагогического вуза непрофильных...
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа по курсу «Физические основы микроэлектроники» Нижний Новгород, 2005
Операционный усилитель: Лабораторная работа по курсу «Микроэлектроника» / Сост. Н. В. Федосеева, С. М. Планкина. – Н. Новгород, ннгу,...
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа №1 Лабораторная работа №1 1
В качестве примера рассматривается деятельность вымышленной компании «Computer Word». Компания занимается в основном сборкой и продажей...
Лабораторная работа №7 Приоритеты потоков iconЛабораторная работа выполняется в дисплейном классе. Результат представляет собой работающую программу, которая может анализировать любые тексты и сообщать об ошибках программирования
Данная лабораторная работа рассчитана на 4 аудиторных часа и ещё 4 часа самостоятельной работы для изучения литературы и оформление...
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница