C#异步读取数据
在读写文件的时候用BeginRead,BeginWrite的时候可以进行异步调用
public delegate void AsyncCallback(IAsyncResult ar)
一个简单的例子入下:
class Program
{
static void Main(string[] args)
{
FileStream fs = new FileStream("c:\\c-sharp.txt",FileMode.OpenOrCreate);
byte[] data = new byte[fs.Length];
Console.WriteLine("read data...");
fs.Read(data, 0, data.Length);
fs.Position = 0;
AsyncCallback callBack = new AsyncCallback(OnWriteCompletion);
fs.BeginWrite(data,0,data.Length,callBack,null);
Console.WriteLine("write data ...");
for (int i = 0; i < 100; i++)
{
Console.WriteLine("count is :{0}",i);
}
fs.Close();
}
static void OnWriteCompletion(IAsyncResult ar)
{
Console.WriteLine("write operation completed!!!");
}
}