Рецепты

Безопасное закрытие Data-графа

Остановка производителей до потребителей и сохранение владения общими DataSource в корне композиции.

v1.1.0Продвинутый уровеньark_data_layer

Безопасное закрытие Data-графа

dart
await binding.close();
await useCase.close();
await repository.close();
await remoteSource.close();
await database.close();

Общими источниками владеет внешний корень композиции. Переопределяйте closeRepository() только для подписок и ресурсов, созданных самим Repository. Повторные вызовы close() возвращают тот же Future и не повторяют очистку.