LINUX.ORG.RU

История изменений

Исправление rukez, (текущая версия) :

пока ты будешь ворочать вейты-нотифаи через мьютексы вручную

Ну вот что бы не бояться в вейты и стоит их освоить - по сути future это обертка которая автоматом дергает релиз перед выходом из runnable и ты получаешь переменную как результат (runnable превращается в callable) - это полностью аналогично делается через wait, однако (с) как только тебе потребуется результат одного прохода callable в двух разных потоках тебе придется синхронизировать уже их, и в случае с completable это уже может оказаться более сложным чем серия голых локов

Т.е. смысл от future в целом понятен но в реальности не то чтоб был сильно нужен, особенно учитывая что они реально простенько реализуются самостоятельно при нужде - все что нужно для многопотока в явушке есть со старта 👌

Исходная версия rukez, :

пока ты будешь ворочать вейты-нотифаи через мьютексы вручную

Ну вот что бы не бояться в вейты и стоит их освоить - по сути future это обертка которая автоматом дергает релиз перед выходом из runnable и ты получаешь переменную как результат (runnable превращается в callable) - это полностью аналогично делается через wait, однако (с) как только тебе потребуется результат одного прохода callable в двух разных потоках тебе придется синхронизировать уже их, и в случае с completable это уже может оказаться более сложным чем серия голых локов

Т.е. смысл от future в целом понятен но в реальности не то чтоб был сильно нужен, особенно учитывая что они реально простенько реализуются самостоятельно при нужде