用两个streamReader同时读一个文件 会产生什么问题么?例如死锁,
在多线程情况下,用两个streamReader同时读一个文件   会产生什么问题么?例如死锁,   还是不会影响?   
 thread   th1=new   thread(new   threadStart(do1)); 
 thread   th2=new   thread(new   threadStart(do2)); 
 do1.start();do2.start();     
 void   do1() 
 { 
       StreamReader   sr1=new   StreamReader(FileName,System.Text.Encoding.UTF8); 
 			sr1.BaseStream.Seek(0,SeekOrigin.Begin); 
 			while(sr1.Peek()>    -1) 
 			{	 
 				sr1.ReadLine(); 
 				count++; 
 			} 
 			sr1.Close();                
 }   
 void   do2() 
 { 
       StreamReader   sr1=new   StreamReader(FileName,System.Text.Encoding.UTF8); 
 			sr1.BaseStream.Seek(0,SeekOrigin.Begin); 
 			while(sr1.Peek()>    -1) 
 			{	 
 				sr1.ReadLine(); 
 				count++; 
 			} 
 			sr1.Close();                
 }   
------解决方案--------------------把读取文件的部分写成一个函数,使用lock锁定:   
  lock(this) 
            { 
             System.IO.StreamReader red = new StreamReader( "file.txt "); 
             while (red.Read()) 
             { 
                 .... 
             } 
             red.Close(); 
            }
------解决方案--------------------两个都是只读打开已经不会有问题吧,感觉.
------解决方案--------------------//Monitor.Enter(this); 
 //Monitor.Pulse(this); 
 在这里处理可能冲突数据 
  //Monitor.Exit(this);    
 必须预防冲突