Айоваит убивает производительность на Android

Это на Android, мое приложение замедляет взаимодействие с пользовательским интерфейсом, когда оно пытается создать большой файл, моя SD-карта работает медленно, и я могу наблюдать, как высоко iowait происходит, и процессор просто бездействует при создании большого файла, во время этого процесса приложение вяло, взаимодействие с пользовательским интерфейсом не отвечает, это выглядит нормально, так как моя SD-карта работает медленно, и это то, что ожидается с высокой iowait,

Я где-то читал, что пока кто-то использует асинхронный ввод-вывод, iowait не повлияет на производительность приложения, теперь я не совсем понимаю, что я создаю большой файл в фоновом потоке, который параллельно работает вместе с потоком пользовательского интерфейса, и я думаю, что он не должен блокировать пользовательский интерфейс нить. Да, я не использую Java IO API, не поддерживающий blcoking, но разве этого недостаточно, чтобы быть асинхронным с помощью фонового потока?

PS Я создаю большой файл, открыв RandomAccessFile а также seekв указанной позиции.

0 ответов

Другие вопросы по тегам