Когда липкое обслуживание будет убито, оно будет перезапущено, когда ОС решит причину, по которой оно было убито, недействительно. Например. если он был убит из-за проблем с памятью, он будет перезапущен, когда снова будет достаточно памяти.
Когда система знает, когда она должна перезапустить некоторые убитые службы? Как часто система выполняет эту проверку? Когда я убиваю свою систему обслуживания, несколько раз перезапускаю ее сразу несколько раз через несколько минут или половину наведения ... START_STICKY сказал, что системная служба будет перезапущена, но когда?
Вы не должны беспокоиться об этом. Единственное, что имеет значение, это то, что он is перезапущен в некоторый момент.
У меня есть опыт работы с липкими услугами, и я могу сказать, что время, необходимое для перезапуска убитой службы, может сильно измениться. Несколько раз это будет почти мгновенно, иногда это может занять пару минут, несколько раз в час, несколько раз больше. Он зависит от множества факторов, таких как аппаратное обеспечение вашего устройства, логика операционной системы, планирование задач и т. Д. Вы не можете предсказать его, и ваше приложение не должно зависеть от него.
И будет ли он 100% перезапущен или 99%?
Я никогда не видел липкие служб будучи убитыми и не перезапуском позже.
все зависит от конкретной прошивки устройства. О '100% будет перезапущен или 99%' Я могу сказать, что в нормальной ситуации это 100%, но в критической ситуации он не может быть перезапущен. –
Спасибо Владу. Но почему время для перезапуска так отличается? –
Возможно, перед перезапуском необходимо выполнить более приоритетные задачи. –