Файл First.java
// Потоки - процедура выполнение классов.
// Создадим 3 потока и отправим их в сон.
public class First {
public static void main(String[] args) {
Thread t1 = new Thread(new Reader("1"));
Thread t2 = new Thread(new Reader("2"));
Thread t3 = new Thread(new Reader("3"));
t1.start();
t2.start();
t3.start();
}
}
// Потоки - процедура выполнение классов.
// Создадим 3 потока и отправим их в сон.
public class First {
public static void main(String[] args) {
Thread t1 = new Thread(new Reader("1"));
Thread t2 = new Thread(new Reader("2"));
Thread t3 = new Thread(new Reader("3"));
t1.start();
t2.start();
t3.start();
}
}
Файл Reader.java
import java.util.Random;
class Reader implements Runnable{
public int time; // время, которое наш поток будет спать
public String name;
Random r = new Random();
// Конструктор.
public Reader(String name) {
this.name = name;
time = r.nextInt(999); // создаем рандомное число типа integer от 0 до 999, отправим его в метод sleep, что будет означать сколько будет спать наш поток
}
// Каждый раз, когда мы пробуждаем поток, его выполнение начинается с метода run.
@Override
public void run() {
System.out.printf("Поток %s спит %d миллисекунд\n", name, time);
try {
Thread.sleep(time); // отправляем поток в сон
}catch(Exception e) {}
System.out.printf("Поток %s проснулся и закончился\n", name);
}
}
Комментариев нет:
Отправить комментарий