Уроки Java Профи

#5 - Работа с потоками данных (Threads)

#5 - Работа с потоками данных (Threads)

Потоки это важная часть языка Java. Благодаря потокам мы можем распределять данные между собой и выполнять их по-очереди. В уроке мы научимся работать с потоками, а также узнаем что они из себя представляют.

Видеоурок

Язык Java был создан во времена, когда про многоядерные процессоры в компьютерах даже речь не заходила. Поэтому вполне логично, что язык не был изначально предназначен для компьютеров с несколькими ядрами в процессоре. 


Поскольку ядро было одно, то приходилось выкручиваться и в Java реализовали концепцию многопоточности.


На сегодняшний день существуют более эффективные языки программирования, такие как Go. Подобные языки позволяют максимально эффективно использовать концепцию многоядерности. Но не смотря на этот недостаток, Java спокойно конкурирует со всеми новомодными языками программирования за счёт реализации концепции потоков данных.


Благодаря потокам можно распределять данные и выполнять их параллельно друг другу (по очередности один за другим). Таким образом, можно выполнить одну, две и больше задач в одно и тоже время. Они будут выполняться по очереди друг за другом, но нам будет казаться что выполняются сразу несколько действий одновременно, хотя это не так. 


Такой же эффект вы можете наблюдать каждый день на своем компьютере. Можно подумать, что процессы выполняются одновременно, хотя они выполняются по очередности. 


И да, если у вас не одноядерный процессор, то у вас действительно могут выполнятся две или более задач одновременно.


Для создания потоков можно использовать один из двух вариантов:

  1. Создать класс, что будет унаследован от класса Threads.
  2. Создать класс, что будет реализовывать интерфейс Runnable.

Исходный код

Весь код будет доступен после подписки на проект!

Задание к уроку

Необходимо оформить подписку на проект, чтобы получить доступ ко всем домашним заданиям

Большое задание по курсу

Вам необходимо оформить подписку на сайте, чтобы иметь доступ ко всем большим заданиям. В задание входит методика решения, а также готовый проект с ответом к заданию.
PS: подобные задания доступны при подписке от 1 месяца

Также стоит посмотреть

Уроки Java для начинающих
21 урок
Разработка сайта на Java Spring Boot
7 уроков
Разработка Android программы. Создание чата
6 уроков
Изучение JavaScript: от нуля и до создания сайта
Изучение библиотек jQuery
24 урока
Практика React JS / Разработка магазина (eCommerce)
9 уроков
Комментарии
Добавить комментарий

Пока комментариев нет