Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
19
Добавлен:
05.06.2015
Размер:
20.24 Кб
Скачать

Міністерство освіти і науки, молоді та спорту України

Кіровоградський національний технічний університет

МТФ

Кафедра Програмного забезпечення

Дисципліна СПЗ

Лабораторна робота №2

Виконав ст. гр. КІ-10-1

Перевірив викладач

Бісюк В.А.

Кіровоград 2013

Завдання:

Написати програму ( на будь якій мові програмування), запуску процесу, створити і запустити 4 іменованих потока, після запуску кожного потоку виводити повідомлення: “Запущено потік - (ім’я потоку)”.

Потім в циклі в кожному потоці по 50 разів виводити номер потоку (1,2,3,4). Далі встановити пріоритети потоків 1- Lowest, 2 - BelowNormal, 3 - Normal, 4 – AboveNormal і знову вивести по 50 разів виводити номер потоку.

Після виведення останнього повідомлення вивести запит на завершення роботи програми і знищення потоків і процесів.

В звіті повинен бути висхідний код програми з коментарями.

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; namespace lab_2 {     class Program     {         static void Main()                  {             //створення 1-гопотоку             Thread p1 = new Thread(new ThreadStart(first));             p1.Start(); //Запуск 1-гопотоку             Thread p2 = new Thread(new ThreadStart(second));             p2.Start();                          Thread p3 = new Thread(new ThreadStart(third));             p3.Start();              Thread p4 = new Thread(new ThreadStart(fourth));             p4.Start();              Console.ReadKey(true);         }         static void first()    //Функція, щозапускається 1-мпотоком         {             Console.WriteLine("Запущенопотiк №1");             for (int i = 0; i < 49; i++)                 Console.WriteLine("1");             Thread.CurrentThread.Priority = ThreadPriority.Lowest;             Console.WriteLine("Встановленопрiоритет - Lowest");             for (int i = 0; i < 49; i++)                 Console.WriteLine("1");             if (Thread.CurrentThread.IsAlive)             {                 Console.WriteLine("Потiк №1 будезакрито!");                 Thread.CurrentThread.Abort();             }          }         static void second()             {             Console.WriteLine("Запущенопотiк №2");             for (int i = 0; i < 49; i++)                 Console.WriteLine("2");             Thread.CurrentThread.Priority = ThreadPriority.BelowNormal;             Console.WriteLine("Встановленопрiоритет - BelowNormal");             for (int i = 0; i < 49; i++)                 Console.WriteLine("2");             if (Thread.CurrentThread.IsAlive)             {                 Console.WriteLine("Потiк №2 будезакрито!");                 Thread.CurrentThread.Abort();             }         }                  static void third()             {             Console.WriteLine("Запущенопотiк №3");             for (int i = 0; i < 49; i++)                 Console.WriteLine("3");             Thread.CurrentThread.Priority = ThreadPriority.Normal;             Console.WriteLine("Встановленопрiоритет - Normal");             for (int i = 0; i < 49; i++)                 Console.WriteLine("3");             if (Thread.CurrentThread.IsAlive)             {                 Console.WriteLine("Потiк №3 будезакрито!");                 Thread.CurrentThread.Abort();             }         }         static void fourth()             {             Console.WriteLine("Запущенопотiк №4");             for (int i = 0; i < 49; i++)                 Console.WriteLine("4");             Thread.CurrentThread.Priority = ThreadPriority.AboveNormal;             Console.WriteLine("Встановлено прiоритет - AboveNormal");             for (int i = 0; i < 49; i++)                 Console.WriteLine("4");             if (Thread.CurrentThread.IsAlive)             {                 Console.WriteLine("Потiк №4 будезакрито!");                 Thread.CurrentThread.Abort();             }                      }     } }

Соседние файлы в папке СПЗ