BufferedStream的性能

 

以下代码可以对比FileStream 和BufferedStream的性能,但一定要注意BufferedStream初始时第二个参数一定要比第一个参数的流的大小要大,不然内存缓存就可能用不上

 



static
void Main(string[] args) { Random rd = new Random(); byte[] bb=new byte[1024]; rd.NextBytes(bb); FileStream fs = new FileStream(@"C:\Users\jim\Desktop\aaaaa\aa.txt",FileMode.OpenOrCreate,FileAccess.ReadWrite); BufferedStream bs = new BufferedStream(fs, 1024 * 10240); DateTime dt; double db1 = 0, db2 = 0; dt = System.DateTime.Now; for (int i = 0; i < 10240; i++) { fs.Write(bb, 0, 1000); } db1 = ((TimeSpan)(DateTime.Now - dt)).TotalMilliseconds; dt = System.DateTime.Now; for (int i = 0; i < 10240; i++) { bs.Write(bb, 0, 1000); } db2 = ((TimeSpan)(DateTime.Now - dt)).TotalMilliseconds; Console.WriteLine(db1.ToString("f4")); Console.WriteLine(db2.ToString("f4")); Console.ReadKey(); }
posted @ 2012-11-18 23:14  wahgon  阅读(239)  评论(0编辑  收藏  举报