Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Розробка програми, що демонструє багатопоточність для одного процесора

Реферат Розробка програми, що демонструє багатопоточність для одного процесора





p align="justify">}

// встановлюємо прапорець хендла, що б повідомити головному потоку про те, що ми відпрацювали

((ManualResetEvent) handle). Set ();

}


Тут головний потік запускає три дочірні потоку, які починають викачувати сайти. Поки вони працюють - головний потік очікує в точці WaitHandle.WaitAll (handles);. Як тільки всі три потоки завершать роботу - головний потік продовжить своє виконання. p align="justify"> Щоб при будь виникаючої помилку в потоках, потоки продовжували роботу, але в кінці роботи програми, помилки відобразилися б користувачеві ми будемо використовувати блок try {} catch {} в методі який створює потоки - не зможе відловити помилки самих потоків. Це означає, що відловлювати помилки потоків потрібно всередині того методу, де потік і працює. p align="justify"> Отримаємо більш досконалу версію завантажувача, в якому реалізована політика обробки виключень, вибір кількості потоків, очікування завершення всіх потоків, таймер завантаження і збереження результатів у файли. див. додаток.

додаток програма багатопоточний


4. ТЕСТУВАННЯ ПРОГРАМИ


Протестувавши додаток з різною кількістю потоків, був отриманий такий результат: див. малюнок 2 - малюнок 6.


В 

Рисунок 2 - Робота програми в однопоточному режимі


В 

Рисунок 3 - Робота програми у два потоки


В 

Рисунок 4 - Робота програми в три потоки


В 

Рисунок 5 - Робота програми в чотири потоки


В 

Малюнок 6 - Робота програми в п'ять потоків


Таблиця 1 Таблиця відносини часу завантаження сторінок до кількості потоків

Кількість запущених одночасних потоковВремя в секундах18.79224.85633.42243.26353.191

В 

Малюнок 7 - Графік залежності часу на завантаження сторінок від кількості одночасних потоків


Проаналізувавши дані таблиці 1 і графіка залежності часу на завантаження сторінок від кількості потоків див. малюнок 7, можна зробити висновок що, використання багатопоточності дає хороший результат при роботі з віддаленими об'єктами, такими як web-сторінки або бази даних. Якщо запит до web-сторінці або базі даних виконується досить довго, то для цього краще створити окремий потік, надавши користувачу можливість продовжити роботу з іншими даними. br/>

ВИСНОВОК


У курсовій роботі були вивчені методи створення багатопоточних додатків з використанням мови C # в Visual Studio.NET.

Побудовано алгоритми та структура програми багатопотокового додатку. Отримане додаток синхронізує виконання процесів завантаження web-сторінок. Дана програма реалізована мовою C #, виконуваний файл займає 7680 бай...


Назад | сторінка 13 з 15 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми для завантаження зображення нот з подальшим їх розпізнава ...
  • Реферат на тему: Розрахунок витрат підприємства на виконання програми робіт ТО і ТР автопарк ...
  • Реферат на тему: Робота з графічним пакетом Corel Draw і створення тестової програми в серед ...
  • Реферат на тему: Розробка програми для визначення залежності швидкості вала двигуна від часу ...
  • Реферат на тему: Формування бази даних транспортних потоків