Этот вопрос проверяет умение масштабировать периодические сетевые запросы в архитектуре MVVM.
Короткий ответ
Лучше запускать единственный Flow или LiveData в одном ViewModel, который внутри viewModelScope с помощью flow {} и delay(5000) эмитит результат каждые пять секунд. Остальные три ViewModel могут делегировать подписку на общий источник данных (SharedFlow или отдельный синглтон-репозиторий), чтобы не создавать дубли HTTP-запросов и экономить ресурсы.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.