Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум

  1. Урок 1. 00:01:16
    1.1 О чем модуль
  2. Урок 2. 00:17:42
    1.2 Введение в многопоточность зачем и как
  3. Урок 3. 00:17:06
    1.3 Process vs Thread и память JVM
  4. Урок 4. 00:13:46
    1.4 Планировщик ОС, контекст‑свитч и состояния потоков
  5. Урок 5. 00:22:21
    1.5 Thread API в действии
  6. Урок 6. 00:10:47
    1.6 Daemon vs User Threads и завершение JVM
  7. Урок 7. 00:23:16
    1.7 Введение в синхронизацию synchronized и volatile
  8. Урок 8. 00:01:46
    2.1 О модуле
  9. Урок 9. 00:22:40
    2.2 Java Memory Model и Reordering
  10. Урок 10. 00:22:44
    2.3 Межпоточная сигнализация wait_notify_notifyAll
  11. Урок 11. 00:23:00
    2.4 Примитивы синхронизации ReentrantLock_Condition, Semaphore, ReadWriteLock, CountDownLatch
  12. Урок 12. 00:19:42
    2.5 Atomic Types и CAS-loop
  13. Урок 13. 00:25:55
    2.6 Deadlock и Livelock все способы решений
  14. Урок 14. 00:07:06
    2.7 ThreadLocal устройство, утечки
  15. Урок 15. 00:40:13
    2.8 Пишем свою реализацию ArrayBlockingQueue
  16. Урок 16. 00:02:14
    3.1 О модуле
  17. Урок 17. 00:37:29
    3.2 Пулы потоков и Fork Join выбор и практика
  18. Урок 18. 00:36:10
    3.3 Асинхронность от Future к CompletableFuture
  19. Урок 19. 00:34:18
    3.4 Concurrent Collections практика и устройство
  20. Урок 20. 00:26:56
    3.5 Virtual Threads (Loom) введение, mapping и mount unmount
  21. Урок 21. 00:20:39
    3.6 Virtual Threads pinning, ограничения и best practices
  22. Урок 22. 00:01:50
    4.1 О модуле
  23. Урок 23. 00:26:31
    4.2 Thread-per-Request vs Event Loop vs Virtual Threads
  24. Урок 24. 00:19:09
    4.3 Закон Амдала и узкие места в продакшене
  25. Урок 25. 01:52:08
    4.4 Финальный прод-кейс AsyncTaskRunner
  26. Урок 26. 01:01:00
    4.5 Нагрузочное тестирование и боттлнеки
  27. Урок 27. 00:33:57
    5.1. Бэкстейдж к курсу
  28. Урок 28. 01:25:49
    5.2. Самые частые вопросы с собеседований по теории и Livecoding