JavaRush
Promotion
Learning
Courses
Tasks
Quizzes
Games
Help
Schedule of nudges
Internship
Community
Users
Forum
Chat
Articles
Success stories
Activities
Reviews
Subscriptions
Light theme

Lectures

  • Reviews
  • About us
  • CS50
Start
Start learning
Start learning
  • My progress
  • Courses
  • Quest map
  • Lectures
  • Вы достигли 17 уровня

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

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

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

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

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

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

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

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

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

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

    Java Core
    7 level,10 lecture
    Капитан Galaxy Rush Бобров на связи! У него для вас есть пару сюрпризов. Точнее, не пару, и не сюрпризов, а целых десять задач на закрепление знаний о нитях. А самые любознательные могут попробовать свои силы в решении трёх бонусых задачек посложнее. В одной из них, например, вы будете разбираться с незадачливым официантом в ресторане.
    Open
Learn
  • Registration
  • Java course
  • Help with tasks
  • Pricing
Community
  • Users
  • Articles
  • Forum
  • Chat
  • Success stories
  • Activities
Company
  • About us
  • Contacts
  • Reviews
  • FAQ
  • Support
JavaRushJavaRush — is an interactive online course for learning Java programming from scratch. It contains 1200 practical tasks with one-click solution checking, the necessary minimum of theory on Java basics, and motivating features that help you complete the course: games, quizzes, interesting projects and articles on effective learning and the career of a Java developer.
Follow us
Язык интерфейса
Русский
English
Українська
"Programmers are not born" © 2026 JavaRush
MastercardVisa
"Programmers are not born" © 2026 JavaRush