если мы на дефолтном диспатчере запутили таску и потом переключаемся на айо диспатчер с помощью withContext то он не выполнит следующий блок на другом потоке
Ну по сути и разница лишь в том, что IO оперирует большим количеством потоков и тот, что в default ведь один из тех, что и в IO? В контексте андроида тем более различий меньше, ибо что тот, что другой отдельно от ui-потока.
Вчера перевел проект на API 31 и он стал тут же крэшиться при запуске с жалобой на флаги у PendingIntent при Target API S+. У меня в проекте нет PendingIntent вообще.
Про это я в курсе. Я больше о том, что поток, используемой Default-диспатчером один из пула потоков для IO-дитспатчера. Поэтому решил уточнить, так ли это и этим ли руководствуется переход между ними при выполнении задач.