Может ли ОС остановить AsyncTask, если она занимает слишком много времени? - PullRequest
0 голосов
/ 11 октября 2018

Если я выполняю asynctask в одном из своих сервисов, может ли когда-нибудь случиться, что android по какой-то причине остановит asynctask, например, когда он занимает слишком много времени?

1 Ответ

0 голосов
/ 11 октября 2018

Если вы не получили ответа от своей задачи, вы можете вызвать:

asyncTask.cancel(true);

Затем в вашем методе doInBackground () вам нужно проверить, был ли он отменен, прежде чем пытаться использовать данные обратного вызова.:

if (isCancelled())

[EDIT 1] Если вы не хотите отменить его, и вам интересно, может ли ОС остановить вашу задачу, ответ - Да.ОС Android может запретить вашему приложению использовать какой-либо ресурс, если решит, что это нужно что-то еще больше, чем вашему приложению, особенно если ваше приложение не на переднем плане.

...