Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб.работа 2a с C# и Java.doc
Скачиваний:
6
Добавлен:
17.08.2019
Размер:
145 Кб
Скачать
☆

Задание

  1. Выполнить приведённые программы с событиями. Модифицировать их в соответствии указаниями преподавателя.

  1. Создать программу с одним источником и массивом приёмников. Обработчики приёмников должны выдать на консоль дополнительно к данным события также номер объекта источника и номер объекта приёмника.

  1. Создать программу с массивом источников и одним приёмником. Обработчик приёмника должен выдать на консоль дополнительно к данным события также номер объекта источника и номер объекта приёмника.

  1. Создать программу с массивом источников и массивом приёмников. Обработчики приёмников должны выдать на консоль дополнительно к данным события также номер объекта источника и номер объекта приёмника.

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

Часть 3. Потоки в языке с# Поток

using System;

using System.Threading;

class TestThread

{

static void Main ()

{

// Создать объект типа TestThread

TestThread tT= new TestThread ();

// Создать поток

Thread t= new Thread (new ThreadStart(tT.SumC));

t.Start(); // Запустить объект

}

void SumC () // Потоковая функция

{

int a= 10, b= 14, c=0;

for(int i=a;i<b; i++)

{

Console.WriteLine ("i= "+ i);

c= c+i;

Thread.Sleep (10);

}

Console.WriteLine ("c= "+ c);

}

}

Потоковые объекты

using System;

using System.Threading;

class ThreadObject // Класс потокового объекта

{

int num; // Номер объекта

public ThreadObject (int N)

{

num= N;

// Создать поток с потоковой функцией SumC()

Thread t= new Thread (new ThreadStart(this.SumC));

t.Start (); // Запустить поток объекта

}

//Потоковая функция

void SumC ()

{

int a= 10, b= 14, c=0;

for(int i=a;i<b; i++)

{

Console.WriteLine ("num= = "+ num +"i= "+ i);

c= c+i;

Thread.Sleep(10);

}

Console.WriteLine("c= "+ c);

}

}

class TestThread

{

static void Main ()

{

//Создать первый потоковый объект и запустить его поток

ThreadObject tO1= new ThreadObject (1);

//Создать второй потоковый объект и запустить его поток

ThreadObject tO2= new ThreadObject (2);

}

}

Задание

  1. Выполнить приведённые программы с потоками. Модифицировать их в соответствии указаниями преподавателя.

Часть 4. Потоки в языке Java Поток

public class TestThread implements Runnable

{

public TestThread()

{

Thread t= new Thread (this); // Создать поток

t.start ();

}

public static void main ( )

{

// Создать объект типа TestThread

TestThread tT= new TestThread ();

}

public void run () // Потоковая функция

{

int a= 10, b= 14, c=0;

for(int i=a;i<b; i++)

{

System.out.println ("i= "+ i);

c= c+i;

try

{

Thread.sleep (10);

}

catch(InterruptedException iE){}

}

System.out.println ("c= "+ c);

}

}