Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Приостановка и возобновление выполнения потоков






Федеральное агентство по образованию

Государственное образовательное учреждение высшего профессионального образования

М осковский государственный университет
приборостроения и информатики”

Филиал Сергиев Посад специальность  
       
Кафедра ИТ4 “Вычислительные машины, комплексы, системы и сети”
       
Дисциплина «Параллельные и распределенные вычисления»
   
   
   
задание к зачету на тему:
«Многопотоковая программа»
 
Студент 28.05.2011 А.Д. Перепеченов
  подпись, дата инициалы и фамилия
     
Группа ИТ4-2009-02Д шифр  
       
       
   
   
Проект защищен на оценку  
   
   
Руководитель проекта (работы)   Е.И.Зайцев
  подпись, дата инициалы и фамилия
Члены комиссии:
     
  подпись, дата инициалы и фамилия
 
     
  подпись, дата инициалы и фамилия
 
     
  подпись, дата инициалы и фамилия
               

Формулировка задания

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

Описание алгоритма

Для выполнения задания мною была разработана многопотоковая программа в среде Delphi.Данная программа реализует параллельное(псевдо-параллельное) выполнение трех потоков. В качестве потока мною был использован компонент типа TThread. TThread – абстрактный класс, позволяющий создать отдельный поток. Один из методов данного класса - процедура Execute (см.Приложение А «Листинг программы»), является основной процедурой вычислений потока.При её окончании завершается выполнение данного потока. Приостановка выполнения потока осуществляется методом Suspend, а затем продолжить вызовом метода Resume.При этом, если вызывать метод Suspend несколько раз, то возобновить работу потока можно только вызвав метод Resume столько же раз.

Абстрактная модель программы.

Программа должна соответствовать следующим требованиям:

-создавать потоки;

-возможность приостанавливать и возобновлять работу потоков;

-возможность менять приоритеты выполнения потоков;

-графическая демонстрация выполнения потоков.

 

 

Создание потоков

Создание потоков реализуется с помощью стандартного метода класса TThread – Create(CreateSuspended: boolean), где CreateSuspended – параметр логического типа. Если CreateSuspended=false, то выполнение процедуры Execute начнётся сразу после создания объекта потока, иначе – выполнение потока начнётся только после вызова метода Resume.В разработанной программе три потока T1, T2 и Т3 создаются при создании формы(окна приложения). Эти потоки создаются и сразу же начинает своё выполнение.

 

Приостановка и возобновление выполнения потоков

Приостановка выполнения потоков осуществляется с помощью метода Suspend, возобновление - Resume.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.006 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал