一个缓冲区就是内存用于缓存数据,从而减少了对操作系统的调用中的字节块。 缓冲区提高读取和写入性能。 缓冲区可以同时使用的是读取或写入,但永远不会同时。 Read并Write方法的BufferedStream自动维护缓冲区。
BufferedStream 可以是围绕某些类型的流组成。 它提供用于读取和字节写入到基础数据源或存储库的实现。 使用BinaryReader和BinaryWriter用于读取和写入其他数据类型。 BufferedStream 设计是为了防止从减的前提下输入和输出时不需要缓冲区的缓冲区。 如果始终读取和写入的大小大于内部缓冲区的大小,然后BufferedStream可能甚至无法分配内部缓冲区。 BufferedStream 此外缓冲读取和写入的共享缓冲区中。 假定您将几乎总是会执行一系列的读取或写入,但很少会交替使用这两个孩子。
属性
CanRead 获取一个值,该值指示当前流是否支持读取。
CanSeek 获取一个值,该值指示当前流是否支持查找。
CanTimeout 获取一个值,该值确定当前流是否可以超时。
(Inherited from Stream)
CanWrite 获取一个值,该值指示当前流是否支持写入。
Length 获取流长度,长度以字节为单位。
Position 获取当前流内的位置。
ReadTimeout 获取或设置一个值(以毫秒为单位),该值确定流在超时前尝试读取多长时间。
(Inherited from Stream)
WriteTimeout 获取或设置一个值(以毫秒为单位),该值确定流在超时前尝试写入多长时间。
(Inherited from Stream)
方法
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) 开始异步读操作。 (请考虑改用 ReadAsync(Byte[], Int32, Int32, CancellationToken)。)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 开始异步写操作。 (请考虑改用 WriteAsync(Byte[], Int32, Int32, CancellationToken)。)
CopyTo(Stream) 从当前流中读取字节并将其写入到另一流中。
(Inherited from Stream)
CopyToAsync(Stream) 从当前流中异步读取字节并将其写入到另一个流中。
(Inherited from Stream)
CopyToAsync(Stream, Int32) 使用指定的缓冲区大小,从当前流中异步读取字节并将其写入到另一流中。
(Inherited from Stream)
CreateObjRef(Type) 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。
(Inherited from MarshalByRefObject)
CreateWaitHandle() 分配 WaitHandle 对象。
(Inherited from Stream)
Dispose() 释放由 Stream 使用的所有资源。
(Inherited from Stream)
Dispose(Boolean) 释放由 Stream 占用的非托管资源,还可以另外再释放托管资源。
(Inherited from Stream)
EndRead(IAsyncResult) 等待挂起的异步读操作完成。 (请考虑改用 ReadAsync(Byte[], Int32, Int32, CancellationToken)。)
BufferedStream
最新推荐文章于 2024-02-29 01:50:27 发布