バイト ストリームをサイズが大きくなるチャンクに分割しようとしています。
ソース ストリームに不明なバイト数が含まれており、読み取りにコストがかかります。列挙子の出力は、8KB から 1MB まで増加するサイズのバイト配列である必要があります。
これは、ストリーム全体を読み取って配列に格納し、関連する部分を取り出すだけで、非常に簡単に実行できます。ただし、ストリームは非常に大きい場合があるため、一度に読み取ることはできません。また、パフォーマンスは主な関心事ではありませんが、システムの負荷を非常に低く保つことが重要です。
これを実装しているときに、コードを短く維持しやすくするのは比較的難しいことに気付きました。留意すべきストリーム関連の問題もいくつかあります (たとえば、Stream.Read は成功してもバッファーがいっぱいにならない場合があります)。
私のケースに役立つ既存のクラスは見つかりませんでしたし、ネット上でそれに近いものを見つけることもできませんでした。そのようなクラスをどのように実装しますか?