ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ
171
ON_MESSAGE(MyMessage,OnMy)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
Добавьте макрос
ON_MESSAGE.
Он принимает два параметра –
идентификатор сообщения и имя функции-обработчика. Теперь при посылке сооб-
щения
MyMessage
будет автоматически вызываться функция
OnMy
. Аргументами
функции будут являться значения, переданные функциям PostMessage и SendMes-
sage. Это могут быть или целые числа, или указатель на структуру с дополнитель-
ными данными.
Задание 6.
Запустите просчет сходимости комплексного ряда в два потока. К примеру,
один поток будет просчитывать чётные строки, начиная сверху, а другой – нечет-
ные, начиная снизу.
В итоге должна получиться программа, эмулирующая выполнение сложных
вычислений на отдельном процессоре, и обеспечивающая удобный интерфейс с
пользователем за счет основного процессора. Обратите внимание, что в обоих слу-
чаях используется один и тот же механизм – обмен сообщениями.
Лабораторная работа №7
Приоритеты потоков
Цель работы: исследовать значение приоритета потоков для их синхронизации
в системе с псевдопараллельным режимом работы.
Задание1.
Разработайте программу сортировки чисел. Программа должна удовлетворять
следующим требованиям:
-
Должны быть реализованы процедуры сортировки пузырьком, вставкой, и бы-
строй сортировки.
-
Размер выборки для сортировки должен задаваться пользователем.
-
Пользователь должен иметь возможность замедлять и останавливать сорти-
ровку.
-
Все три сортировки должны работать одновременно и над одинаковым набо-
ром входных данных.
Поскольку размер выборки будет меняться, целесообразно использовать ди-
намические массивы. Для этого используйте операторы
new
и
delete.
Для задания
начальных значений используйте генератор случайных чисел
rand()
: он возвращает
значение от 0 до
MAX_RAND
.
1...,163,164,165,166,167,168,169,170,171,172 174,175,176,177,178,179,180