Вы действительно не должны спать на AsyncTask, как это.Причина - все AsyncTasks совместно используют один и тот же поток (если только вы не вызываете executeOnExecutor).Это означает, что если выполняется одна задача, никакая другая AsyncTask в вашей системе не сможет работать до ее завершения.В результате AsyncTask должен быть очень быстрым и изолированным.То, что будет спать по N раз в секунду каждый раз, не должно быть асинхронной задачей.
Для чего-то подобного правильным ответом, вероятно, является просто отправка отложенного сообщения в обработчик и запуск его в пользовательском интерфейсе.поток с каждой задержкой.
Для чего-то, что на самом деле выполняет нагрузку на процессор, но нуждается в таком режиме сна, используйте поток.