JavaRush
Акция
Java‑университет
Обучение
Курс
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Карта квестов
  • Лекции
  • Открытые квесты
  • Вы достигли 17 уровня

    Java Core
    7 уровень, 0 лекция
    Поздравляем, вы прошли шестой уровень квеста «Java Core»! Вы прикоснулись к важной теме — нитям (или потокам) и решили 34 задачи (или чуть меньше, если что-то оставили на потом). На седьмом уровне продолжаем изучать нити. В ближайшее время разберемся со статическим методом yield и ключевыми словами synchronized и volatile.
    Открыта
  • Проблемы многопоточности: обращение к общему ресурсу

    Java Core
    7 уровень, 1 лекция
    Нити, разумеется, круты и открывают перед программистами мир невероятных возможностей и… ворох сложностей. Разные нити меняют состояние разных объектов в соответствии с задачей, которую каждая из них выполняет. И, разумеется, могут мешать друг другу! Но самое страшное происходит глубоко в недрах Java-машины… Звучит интригующе?
    Открыта
  • Задачи на общий ресурс — вывод в консоль

    Java Core
    7 уровень, 2 лекция
    Как сказал один мудрый учитель, программа – это набор объектов, по которым лазает несколько «маленьких роботиков» – нитей – и выполняют команды, содержащиеся в методах. А большой роботик Диего не может оставить вас без удовольствия решения задач на общий ресурс. Их всего две, но придётся помозговать.
    Открыта
  • Нет независимости нитей! Даешь synchronized!

    Java Core
    7 уровень, 3 лекция
    Неконтролируемое переключение нитей – та ещё проблема. Возникает резонный вопрос: почему бы нитям не предоставить свободу воли и разрешить самим управлять своим переключением? На самом деле такой подход создает ещё больше проблем. О том, какие это проблемы и что же всё-таки делать, узнаете из этой лекции.
    Открыта
  • Даешь synchronized! Практическая версия

    Java Core
    7 уровень, 4 лекция
    От учителя Диего ничего не скроешь. Он узнал, что в предыдущей лекции вы познакомились с блокировкой нитей и узнали, что такое мютекс, как с ним работать, и для чего нужно ключевое слово synchronized. Пять задач на synchronized от маэстро Диего ждут вас!
    Открыта
  • Проблема многопоточности — локальный кэш. Volatile

    Java Core
    7 уровень, 5 лекция
    Хьюстон, у нас проблема с многопоточностью! Да, снова. На этот раз она связана с механизмом использования кэш-памяти. Той самой кэш-памяти, в которую процессор заносит свои самые часто используемые переменные. Делает он это чтобы ускорить свою работу, но вот тут и сокрыт корень зла. В чём загвоздка, и как решить проблему вы узнаете совсем скоро.
    Открыта
  • Задачи на volatile

    Java Core
    7 уровень, 6 лекция
    Благодаря модификатору volatile чтение и запись значения переменной всегда будут происходить в обычной, общей для всех нитей, памяти. А благодаря роботу Диего вы прямо сейчас можете решить две задачи на использование volatile, и стать на один маленький шажочек ближе к званию Java Junior Developer.
    Открыта
  • yield — пропуск хода

    Java Core
    7 уровень, 7 лекция
    Вы уже в курсе, что процессор постоянно переключается между нитями. На каждую нить выделяется квант — кусочек процессорного времени. Время истекает – процессор переключается на другую нить и выполняет её команды. Ну а если вам нужно завершить квант текущей нити досрочно, вам на помощь приходит статический метод класса Thread по имени yield!
    Открыта
  • Полезные ссылки от Профессора — 17

    Java Core
    7 уровень, 8 лекция
    Специально для вас профессор Нуддлз нашёл в сети очень интересную лекцию, из которой вы узнаете много нового о synchronized, volatile и yield. Он рекомендует почитать их, но не слишком углубляться: настоящее погружение в эту тему произойдет несколько позднее.
    Открыта
  • Из чего должен состоять технический бэкграунд Java-разработчика

    Java Core
    7 уровень, 9 лекция
    В интервью мы говорим с разработчиком Epam Systems Романом Бескровным о том, что надо выучить начинающему программисту, кроме языка Java. Базы данных, платформа Docker, инструменты сборки Maven и Gradle, – со знанием этих технологий вы быстрее прокачаетесь в разработке и сделаете свою работу эффективнее.
    Открыта
  • Бонусное задание | 10 лекция | 7 уровень

    Java Core
    7 уровень, 10 лекция
    Капитан Galaxy Rush Бобров на связи! У него для вас есть пару сюрпризов. Точнее, не пару, и не сюрпризов, а целых десять задач на закрепление знаний о нитях. А самые любознательные могут попробовать свои силы в решении трёх бонусых задачек посложнее. В одной из них, например, вы будете разбираться с незадачливым официантом в ресторане.
    Открыта
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
  • Задачи-игры
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRush JavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
"Программистами не рождаются" © 2023 JavaRush
MastercardVisa
"Программистами не рождаются" © 2023 JavaRush
Этот веб-сайт использует данные cookie, чтобы настроить персонально под вас работу сервиса. Используя веб-сайт, вы даете согласие на применение данных cookie. Больше подробностей — в нашем Пользовательском соглашении.