Асинхронность и есть ли она на Java?

แชร์
ฝัง
  • เผยแพร่เมื่อ 18 ธ.ค. 2024

ความคิดเห็น • 37

  • @МаксМакс-ч8к
    @МаксМакс-ч8к ปีที่แล้ว +6

    Очень хотелось бы увидеть видео про CompletableFuture!!! Спасибо за видос👍

    • @xmahz
      @xmahz  ปีที่แล้ว +1

      Рано или поздно сделаю)

  • @ТарисфальТоте
    @ТарисфальТоте ปีที่แล้ว +4

    Спасибо автору. Хоть я и учу другой язык, интересно смотреть твои видео )

    • @xmahz
      @xmahz  ปีที่แล้ว +1

      Приятно слышать)

  • @KinoHaus777
    @KinoHaus777 ปีที่แล้ว +3

    Спасибо большое!

    • @xmahz
      @xmahz  ปีที่แล้ว +1

      Рад стараться

  • @НикитаНазарьев-я2к
    @НикитаНазарьев-я2к 7 หลายเดือนก่อน +1

    Если в джава нет потоков, то как получается что я закидываю например 4 задачи в ApplicationEventMulticaster (который может асинхронно создавать эвенты) и потом в EventListener ставлю ThreadSleep на 5 секунд, он заканчивает работу всех задач через 5 секунд. Или например как работает parallelStream по такому же принципу если он создает колличество потоков равное колличеству ядер и асинхронно их обрабатывает

    • @xmahz
      @xmahz  7 หลายเดือนก่อน

      Готов признать косяк, в целом не до конца разобрался в архитектуре работы многопотока, с точки зрения ОС, думал что java создает псевдо-потоки и не имеет возможности использовать ядра напрямую

  • @ffgfg4087
    @ffgfg4087 ปีที่แล้ว +3

    Привет, спасибо за видео, интересно. А можешь рассказать про Future? Я почему-то думал что он связан с ассинхронностью в джава. И на счёт реактивного программирование. Это тоже про ассинх?

    • @xmahz
      @xmahz  ปีที่แล้ว +2

      Да, это асинхронность, просто ты не делаешь await а сохраняешь лист с Future объектами, типо с теми, которые ты должен был дождаться, надеюсь объяснил))

    • @ffgfg4087
      @ffgfg4087 ปีที่แล้ว +2

      @@xmahz огонь, спасибо

  • @sigma3131
    @sigma3131 ปีที่แล้ว +1

    Привет! Я сейчас изучаю Generics. И мне не понятен момент по стиранию типов во время компиляции.)
    Вопрос в следующем.
    Если после компиляции все параметры типа, которые прописываются в стираются и становятся Object, то потом каким образом выбрасывается исключение ClassCastException, который выбрасывается при Runtime? Т.е типы стираются, но информация это где-то хранится? Вопрос: где?

    • @xmahz
      @xmahz  ปีที่แล้ว +1

      Салут, ответ обширный получается, напиши мне в телеграм @xmahz

  • @loray2944
    @loray2944 ปีที่แล้ว +1

    Автор, что у тебя за ide?

    • @xmahz
      @xmahz  ปีที่แล้ว

      Idea обычная

    • @loray2944
      @loray2944 ปีที่แล้ว

      @@xmahzа какая тема ?

    • @xmahz
      @xmahz  ปีที่แล้ว

      @@loray2944 One Dark Vivid Italic в плагине Material Theme

  • @apacheMax
    @apacheMax ปีที่แล้ว +2

    Со стороны зрителя скажу, неплохо было бы, если ты будешь добавлять свою мысль на экран, например ты даешь определение асинхронности и пишешь на экран определение , а так видос хорош

    • @xmahz
      @xmahz  ปีที่แล้ว +1

      Да там определение скучное, но я учту, спасибо

  • @zeroanyway
    @zeroanyway ปีที่แล้ว +1

    2:30 Что значит многопоточности не существует? И какие методы прерывания потоков? В жаве это отдельный термин. int из asm что ли? Только причём здесь это?
    И к какому потоку идёт обращение? Вот например, если sleep будет без помощи ос преобразован в speenWait?
    Бред какой-то. Потом непонятный код с println, где есть синхронизация... Что хотел сказать этим автор..

    • @xmahz
      @xmahz  ปีที่แล้ว

      То и значит, у тебя 1 поток который явно прыгает между несколькими, так скажем, задачами, эти задачи можно охарактеризовать как потоки

    • @zeroanyway
      @zeroanyway ปีที่แล้ว +1

      @@xmahz, ну это явно вранье. Такое в GIL только. В жаве каждый поток действительно независим, тк представляет собой поток от ос. Возможно перепутали с context switch? Да и то происходит только если нет свободных ядер у процессора.

    • @xmahz
      @xmahz  ปีที่แล้ว

      @@zeroanyway habr.com/ru/articles/164487/
      Хабр, конечно, такой себе авторитет, но в целом информация правдивая

    • @zeroanyway
      @zeroanyway ปีที่แล้ว

      @@xmahz, ну. Пункт потоки как раз про что я и говорил - context switch. Который бывает, когда есть только одно свободное ядро. Если у планировщик решит выделить больше ядер под процесс - такого не будет.
      Просто то, как описываете походит на GIL, что в корне неверно.

    • @xmahz
      @xmahz  ปีที่แล้ว

      @@zeroanyway "Такого не будет" чего именно?

  • @tuborg10
    @tuborg10 ปีที่แล้ว +1

    в java есть либа awaitility

    • @xmahz
      @xmahz  ปีที่แล้ว

      Быть может есть, но зачем?