Основные возможности платформы Hexlet не доступны в вашем браузере.
Пожалуйста, обновитесь. Выбрать браузер.
курс

Java: Многопоточность

Данный курс посвящён изучению многопоточности в Java. Многопоточность — свойство платформы (например, операционной системы, виртуальной машины и т. д.) или приложения, состоящее в том, что процесс, порождённый в операционной системе, может состоять из нескольких потоков, выполняющихся «параллельно», то есть без предписанного порядка во времени.

Сначала рекомендуем пройти курс Java: Структуры данных

1.

Модуль 0. Урок 0. Что же такое многопоточность?

теория (видео 15:15) / тесты

Познакомиться с понятием многопоточности на примере . Увидеть на конкретном примере как можно запустить одновременно несколько потоков.

2.

Модуль 0. Урок 1. Создание и запуск потоков.

теория (видео 11:54) / тесты / упражнение

Познакомиться с двумя популярными способами создания и запуска потоков.

3.

Модуль 0. Урок 2. Создание POJO игры.

теория (видео 08:47) / упражнение

Познакомиться с кодом игры "Крестики-нолики", который будет оптимизирован в дальнейшем.

4.

Модуль 0. Урок 3. Создание графа игры.

теория (видео 10:52) / упражнение

Познакомиться с кодом графа всех состояний игры "Крестики-нолики".

5.

Модуль 1. Урок 0. Многопоточное построение дерева состояний игры.

теория (видео 11:34) / тесты / упражнение

Убедиться в том, что многопоточность – это не так уж просто, как кажется. Давайте для примера попробуем построить состояние досок игры ХО многопоточно. Это ведь просто, не так ли?

6.

Модуль 1. Урок 1. Знакомство с ExecutorService.

теория (видео 14:57) / тесты / упражнение

Познакомиться с разными видами ExecutorService и научиться их использовать.

7.

Модуль 1. Урок 2. Потокобезопасные коллекции.

теория (видео 19:00) / тесты

Познакомиться с потокобезопасными коллекциями.

8.

Модуль 2. Урок 0. Callable — разбираемся что это и с чем его едят.

теория (видео 08:06) / упражнение

Познакомиться с интерфейсом Callable.

9.

Модуль 2. Урок 1. Реализация GraphBuilder.

теория (видео 07:01) / упражнение

Познакомиться с реализацией GraphBuilder при помощи Callable.

10.

Модуль 2. Урок 2. Знакомство с RecursiveTask.

теория (видео 17:05)

Познакомиться с классами RecursiveTask и RecursiveAction.

11.

Модуль 3. Урок 0. Реализация List.

теория (видео 17:21) / тесты

Познакомиться с реализацией мутабельной структуры.

Испытания

В некоторых курсах есть практические задания, которые мы советуем выполнить после завершения курса. Задания помогут вам получить дополнительный опыт в программировании и закрепить полученные навыки. В этом курсе таких заданий нет, но вы можете посмотреть задания из других курсов.

Статистика
952
учащихся
99
вопросов
и ответов
10
часов
Учитель