ソケット アプリケーション (最大 5k の同時接続を処理する) で受信したバイトのコレクション型が必要です。
a を使用してみましたList<byte>が、内部配列が 1 つあり、大量のデータを受け取るため、OutOfMemoryExceptions が発生する可能性があります。
だから私はコレクションが必要です、
- データを小さなブロックに保持します。Unrolled Linked Listのように。
IList<T>各受信操作の後にメッセージの終わりを示す区切り文字を探すため、高速検索 (できれば ) を提供します。
私が今使っているのは ですStream。MemoryStreamあまり多くのデータを含まない操作には を提供し、大量FileStreamのデータを含む操作には一時ファイルを提供します。
MemoryStreamList<T>ただし、ファイルをバッファとして使用しないことを好みます。
それで...
どのようなコレクションまたはアプローチをお勧めしますか?