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

Лекции

  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Мое обучение
  • Курсы
  • Университет
  • Карта квестов
  • Лекции
  • Вы открыли новый уровень

    Java Multithreading
    7 уровень,0 лекция
    Поздравляем с достижением нового уровня
    Открыта
  • Циклы (break и return, continue, метки)

    Java Multithreading
    7 уровень,1 лекция
    — Привет, Амиго! Сегодня я тебе расскажу про некоторые удобные вещи в работе с циклами. Первая такая вещь – это ключевое слово break. Если в теле цикла написать такую инструкцию, то при ее выполнении цикл сразу завершится. Пример: Пример Результат работы цикла: for (int i=0;i<10;i++) { System.out.println(i); if (i>5) break; } 0 1 2 3 4 5 — ...
    Открыта
  • Задачи на break & continue;

    Java Multithreading
    7 уровень,2 лекция
    — Привет, Амиго!
    Открыта
  • DeadLock, и его причины

    Java Multithreading
    7 уровень,3 лекция
    — Привет, Амиго! Сегодня я тебе расскажу, что такое дедлок (Dead Lock) — смертельный захват. — Так ты же уже что-то такое рассказывала. — Ага, было дело. Но сегодня мы рассмотрим эту тему детальнее. В самом простом случае в дедлоке участвуют две нити и два объекта-мютекса. Взаимная блокировка возникает, когда: А) Каждой нити в процессе работы ...
    Открыта
  • Задачи по написанию своих дедлоков

    Java Multithreading
    7 уровень,4 лекция
    — Привет, Амиго!
    Открыта
  • Стратегии избегания DeadLock

    Java Multithreading
    7 уровень,5 лекция
    — Привет, Амиго! Хочу рассказать тебе про пару стратегий избегания дедлоков. Самая лучшая стратегия – это продуманная архитектура и набор правил, когда можно использовать блокировки (захват мютексов) и в каком порядке. Классический способ борьбы с проблемой — разработка иерархии блокировок, установление правила, что некоторые блокировки никогда не могут захватываться в состоянии, в котором уже захвачены ...
    Открыта
  • Задачи по исправлению дедлоков

    Java Multithreading
    7 уровень,6 лекция
    — Привет, Амиго!
    Открыта
  • Стратегия «wait-notify-notifyAll»

    Java Multithreading
    7 уровень,7 лекция
    — Привет, Амиго! Хочу основательно разобрать с тобой тему wait-notify. Методы wait-notify обеспечивают удобный механизм взаимодействия нитей. Также их можно использовать для построения сложных высокоуровневых механизмов взаимодействия нитей. Начну с небольшого примера. Пусть у нас есть программа для сервера, которая должна выполнять различные задания, которые пользователи добавляют через сайт. Пользователи добавляют различные задания в разное ...
    Открыта
  • Нюансы работы

    Java Multithreading
    7 уровень,8 лекция
    — Привет, Амиго! И еще пара деталей. Так сказать практических советов. Пусть у тебя есть метод, который что-то ждет и засыпает, пока условие не выполнено. Если коллекция пустая, то ждем public synchronized Runnable getJob() { if (jobs.size()==0) this.wait(); return jobs.remove(0); } В документации по Java очень старательно советуют вызвать метод wait в цикле: Если коллекция ...
    Открыта
  • Задачи на «wait-notify-notifyAll»

    Java Multithreading
    7 уровень,9 лекция
    — Привет, Амиго!
    Открыта
  • Другие детали синхронизации и многонитиевости

    Java Multithreading
    7 уровень,10 лекция
    — Привет, Амиго! Есть такая здоровенная тема, называется Java Memory Model. В принципе знать ее тебе пока не обязательно, но услышать про это – будет полезно. С целью устранить все возможные проблемы, в Java изменили механизм работы памяти. Теперь память не просто делится на локальный кэш нити и глобальную, а механизм стал еще лучше. — ...
    Открыта
  • Учимся гуглить. (Как получить список файлов по маске)

    Java Multithreading
    7 уровень,11 лекция
    — Привет, Амиго! Продолжаем наши уроки – учимся гуглить. Вот тебе несколько заданий:   Задания на поиск в интернете: 1 Чем плох оператор goto? 2 Что такое зарезервированные слова в Java? 3 Что произойдет, если вызвать wait не в блоке synchronized? 4 Что такое happens-before? 5 Назначение и методы класса BlockedQueue? 6 Как скомпилировать java-файл ...
    Открыта
  • 1
  • 2
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush