обычным классом, есть андроидовский сервис, в котором есть свой coroutineScope. В этом сервисе мне надо запускать suspend метод в repository и иметь возможность эту корутину отменить. Отсюда два варианта - либо передавать в repository скоуп сервиса и запускать корутину в repository, храня ссылку на Job в самом репозитории (этого делать не хочется), либо сейчас пришел в голову вариант - передавать в repository скоуп из сервиса, а сам метод будет возвращать Job и хранить эту ссылку уже в сервисе. Второй вариант крайне заинтересовал, но нет ли каких подводных камней? Концептуально ничего не нарушаю таким образом?
кто будет отменять, и зачем в репозиторий передавать скоуп, если там suspend функция обычная?
немного ошибся, там будет обычная функция, в которую передается скоуп, а возвращается корутиновская джоба. Отменять буду из сервиса
Обсуждают сегодня