役に立ちましたか?

解決

以下は、私が取っていますオンラインコースからいくつかのテキストです

  

BufferedStreamクラスは、コンクリートであります   Streamクラスを拡張するクラス   そして、追加を提供するために使用されます   別のタイプのメモリバッファ   ストリーム、両方の同期および   非同期。 BufferedStream   クラスは、どちらかに設定する必要があります   読み取りまたはの時にインスタンスを書きます   クラスが作成されるが、   BufferedStreamをするように設定することができません   同じでタスクの両方を実行します   時間ます。

     

マイクロソフトは、性能を改善しました   .NET Frameworkのすべてのストリームによって、   内蔵のバッファを含みます。ザ・   パフォーマンスが著しく改善されたことにより、   既存のBufferedStreamを適用します   例えばFileStreamをとしてストリーム、又は   MemoryStreamを。適用   既存の.NETへのBufferedStream   ダブルフレームワークストリーム結果   バッファます。

     

の最も一般的なアプリケーション   BufferedStreamクラスは、カスタムであります   含まれていないストリームクラス   内蔵のバッファます。

他のヒント

ブラッドエイブラムスによると、ほとんどない:リンク

  

いいえ、周りBufferedStreamを包むからゼロ利点があります   FileStreamを。私たちは、にBufferedStreamのバッファリング・ロジックをコピー   FileStreamを約4年前より良いデフォルトを奨励します   パフォーマンス...実際に、私は任意のストリームがであるとは思いません   それを必要とするが、それが習慣で必要になる可能性があるの.NET Framework   彼らは、デフォルトではバッファリングを行わない場合の実装をストリーミングます。

私の知っている最良の場合は、にBinaryFormatterがNetworkStreamから直接デシリアライズ/シリアライズするときです。十倍増加性能挟んBufferedStreamの使用ます。

どのようなのあらゆる可能な機会に使用されなければならないことは常識です。そこに-からのMemoryStream-読み書きこのクラスを利用することには使用はいないが、ネットワークやディスクIOを行う場合(これらのサブシステム用のストリームが自分でバッファリングを行わない場合)、それは非常に便利かもしれません。

通常のファイルI / Oストリームは、すでにのStreamReader / StreamWriterのを使用することによってバッファされています。

ストリーム上の読み取り/書き込み操作は、通常、バイト配列を取る読み取り/書き込みメソッドを使用しているので、あなたが自然にいくつかの自分自身をバッファリングを提供します。

あなたは非常に小さい配列、または使用のwriteByteを使用する場合は、

、あなたが間にBufferedStreamを使用することによって、より良いパフォーマンスを得る可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top