Здравствуйте, Sinclair, Вы писали:
S>Update: Нужно быть аккуратным, и всё же держать очередь окон. Иначе есть риск первым собрать полный комплект не от "текущего" окна, а от "следующего" — тогда наивный алгоритм отправит сначала "следуюшее" окно, а уже потом — предыдущее.
Нет ограничения на порядок отправки, равно как и требования фиксированного шага. Выше я уже показал как для размера 4 получить кусок, размером 8 не по границе "окна".
Впрочем, я уже реализовал через диаппазоны. Не очень оптимально по скорости, но коротко и читаемо. Следующий этап — добавить "заполненность", чтобы допустимо было выдавать куски заполненные не на 100%.