Выбор ответа Middle Производительность и холодный старт обновлено
Что такое ANR
Вопрос
Когда Android показывает диалог ANR (Application Not Responding)?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Когда главный поток не обрабатывает событие ввода около 5 секунд (и при других таймаутах). ANR это сигнал, что главный поток заблокирован: синхронная сеть, диск, блокировки, тяжёлые вычисления.
Варианты ответа
- Когда приложение использует больше 1 ГБ памяти и система не может выделить ещё
- Когда сетевой запрос на любом потоке не отвечает дольше минуты и висит без таймаута на сокете
- Когда приложение крэшится с необработанным исключением на главном потоке
- Когда главный поток не обрабатывает событие ввода около 5 секунд (и при других таймаутах)правильный ответ
Разбор
ANR это сигнал, что главный поток заблокирован: синхронная сеть, диск, блокировки, тяжёлые вычисления. Пороги: около 5 секунд на событие ввода, у BroadcastReceiver свои таймауты. Доля ANR в Android vitals влияет на видимость в Google Play. Память и сеть сами ANR не вызывают, крэш это другое событие.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.