CoroutineScope определяет область, в которой вы храните, разграничиваете и отслеживаете все параллельные операции и привязывает их к жизненному циклу вашего приложения.
Я собирался позвонить decrypt
через пользовательскую область, которую я создал CryptographyScope
.Но это неправильно, поскольку у меня нет ни одного объекта с определенным жизненным циклом, поэтому я не смогу избежать утечки.
Правильно сделать следующее:
fun decryptAll() = coroutineScope {
async {
cryptographyService.decrypt(value1)
}
async {
cryptographyService.decrypt(value2)
}
}