Size: a a a

Android Developer

2019 November 27

OP

Oleg Plesser in Android Developer
Cyril Ovechkin
Не столько родственные, сколько связанные, поскольку асинхронное выполнение задач без многопоточности невозможно
Вот сейчас питонисты удивятся)))
источник

CO

Cyril Ovechkin in Android Developer
То есть хотите сказать, что асинхронные задачи выполняются в потоке, их запустившем, без блокирования оного?
источник

OP

Oleg Plesser in Android Developer
В питоне асинхронные действия выполняются в одном потоке
источник

ИМ

Иван Макеев in Android Developer
Прям глубоко в тему не копал, но любой мануал по js это утверждает.
источник

ИМ

Иван Макеев in Android Developer
А как же корутины? Они могут прерывать задачи с сохранением состояния и выполнять другие.
источник

CO

Cyril Ovechkin in Android Developer
Я не в курсе, что там под капотом, поэтому спорить не буду
источник

ИМ

Иван Макеев in Android Developer
Кстати статью посмотрите, там есть пример однопоточный асинхронный.
источник

CO

Cyril Ovechkin in Android Developer
Ну корутины можно рассматривать как отдельные потоки все же, по сути это конечный автомат, переключающий выполнение методов
источник

OP

Oleg Plesser in Android Developer
Cyril Ovechkin
Ну корутины можно рассматривать как отдельные потоки все же, по сути это конечный автомат, переключающий выполнение методов
++++
источник

CO

Cyril Ovechkin in Android Developer
"поток однажды начав выполнение задачи может приостановить выполнение сохранив текущее состояние и между тем начать выполнение другой задачи" из определения по ссылке, но, простите, где ж тут асинхронное выполнение?
источник

ИМ

Иван Макеев in Android Developer
Опять же, если память не изменяет то на одноядерном процессоре по сути один поток выполнения, где задачи меняются за счёт квантования. Но могу ошибаться.
источник

CO

Cyril Ovechkin in Android Developer
Асинхронность позволяет в любой момент времени обрабатывать поступающие события нет?
источник

ИМ

Иван Макеев in Android Developer
Cyril Ovechkin
"поток однажды начав выполнение задачи может приостановить выполнение сохранив текущее состояние и между тем начать выполнение другой задачи" из определения по ссылке, но, простите, где ж тут асинхронное выполнение?
То что поток выполнения не блокируется.
источник

CO

Cyril Ovechkin in Android Developer
А приостановка - это не блокирование?
источник

ИМ

Иван Макеев in Android Developer
Асинхронное это значит не последовательное выполнение.
источник

ИМ

Иван Макеев in Android Developer
Cyril Ovechkin
А приостановка - это не блокирование?
Нет, это приостановка текущей задачи и выполнению другой в рамках одного потока.
источник

OP

Oleg Plesser in Android Developer
Иван Макеев
Нет, это приостановка текущей задачи и выполнению другой в рамках одного потока.
Асинхроность это можно назвать псевдомногопоточностью
источник

OP

Oleg Plesser in Android Developer
Родственные понятия это потому, что они решают одни и теже задачи
источник

CO

Cyril Ovechkin in Android Developer
Ну ок, вы читаете большой файл в синхронной однопоточной программе: запускаете чтение, ждёте окончания, по сути вы блокируете выполнение основного потока, причём неважно читаете вы в том же потоке или в параллельном, но блокировка  и ожидание завершения - это стиль синхронного выполнения
источник

OP

Oleg Plesser in Android Developer
Параллельное выполнение задач
источник