- •Государственное образовательное учреждение высшего профессионального образования
- •1 Формулировка задания
- •2.1 Описание алгоритма
- •2.2 Абстрактная модель программы.
- •2.2.1 Создание потоков
- •2.2.2 Приостановка и возобновление выполнения потоков
- •2.2.4 Смена приоритетов
- •Заключение
- •Список используемой литературы
- •Приложение а
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
“Московский государственный университет приборостроения и информатики”
Филиал |
Сергиев Посад |
специальность |
230101 |
||||
|
|
|
|
||||
Кафедра |
ИТ4 “Вычислительные машины, комплексы, системы и сети” |
||||||
|
|
|
|
||||
Дисциплина |
«Параллельные и распределенные вычисления» |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
задание к зачету на тему: |
|||||||
«Многопотоковая программа» |
|||||||
|
|||||||
Студент |
28.05.2011 |
А.Д. Перепеченов |
|||||
|
подпись, дата |
инициалы и фамилия |
|||||
|
|
|
|||||
Группа |
ИТ4-2009-02Д |
шифр |
9064 |
||||
|
|
|
|
||||
|
|
|
|
||||
|
|
||||||
|
|
||||||
Проект защищен на оценку |
|
||||||
|
|
||||||
|
|
||||||
Руководитель проекта (работы) |
|
Е.И.Зайцев |
|||||
|
подпись, дата |
инициалы и фамилия |
|||||
Члены комиссии: |
|
|
|||||
|
|
|
|||||
|
подпись, дата |
инициалы и фамилия |
|||||
|
|
|
|||||
|
|
|
|||||
|
подпись, дата |
инициалы и фамилия |
|||||
|
|
|
|||||
|
|
|
|||||
|
подпись, дата |
инициалы и фамилия |
1 Формулировка задания
Создать потоковую программу, реализующую параллельное вычисление двух или более потоков(в прилагаемой программе три потока).
2.1 Описание алгоритма
Для выполнения задания мною была разработана многопотоковая программа в среде Delphi.Данная программа реализует параллельное(псевдо-параллельное) выполнение трех потоков. В качестве потока мною был использован компонент типа TThread. TThread – абстрактный класс ,позволяющий создать отдельный поток. Один из методов данного класса - процедура Execute (см.Приложение А «Листинг программы»), является основной процедурой вычислений потока.При её окончании завершается выполнение данного потока. Приостановка выполнения потока осуществляется методом Suspend, а затем продолжить вызовом метода Resume.При этом, если вызывать метод Suspend несколько раз, то возобновить работу потока можно только вызвав метод Resume столько же раз.