Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
При первом чтении, если вернулась ошибка, сразу перечитать список и вернуть полный, а дальше обращаться с сервером, как с медленным.Как вариация: прочитать, встретить ошибку.
Не подходит, потому что: сетевой клиент возвращает список не по завершению запроса, а частями, асинхронно, во время выполнения. Так что первая часть списка может быть возвращена (и использована программой-клиентом) еще до того, как сетевой клиент получит ошибку и поймет, что надо перечитать список.Этот?
Еще один очевидный вариант, не описанный Реймондом в статье, но отвеченный в комментариях.
При первом чтении, если вернулась ошибка, сразу перечитать список и вернуть полный, а дальше обращаться с сервером, как с медленным.
Не подходит, потому что: сетевой клиент возвращает список не по завершению запроса, а частями, асинхронно, во время выполнения. Так что первая часть списка может быть возвращена (и использована программой-клиентом) еще до того, как сетевой клиент получит ошибку и поймет, что надо перечитать список.
Как бы вы решили такую проблему совместимости?