То, что я хочу сделать, довольно просто в теории - мне нужно сканировать все файлы MP3, присутствующие на устройстве, и выполнять некоторые обновления метаданных, запрашивая что-то вроде AcoustId или GraceNote.Запуск mutliple threads внутри IntentService
Я планирую использовать класс, расширив IntentService
, а в onHandleIntent()
планирую создавать потоки N, каждый поток обновляет метаданные одного файла. Основная причина, по которой я использую IntentService
, - это то, что мне не нужно общаться с потоком пользовательского интерфейса, и что задача под рукой занимает относительно много времени.
Мой главный вопрос: поддерживает ли IntentService пользовательские потоки? Если нет, то какая у меня лучшая альтернатива? Я знаю, что я не должен использовать AsyncTask
, так как они используются только для относительно небольших вычислений.
Заранее благодарен!
ничто не мешает автору от порождая собственную нить хотя –
@OlegBogdanov - за исключением, если вы расширяете 'IntentService', в сервис останавливается сразу после окончания 'onHandleIntent', что делает его ужасным выбором для нереста ваших собственных потоков. – ianhanniballake