异步操作的一点认识

小弟第一次写blog,以前没有接触过remoting,看了半天webcast,自己尝试写了一个简单的例子

一个异步写文件的操作

    public delegate void WriteMessageDelegate(string msg);

 
public class MessageClass
{
        
public void AysncWriteMessage(string str)
      
{
            
//委托代理
            WriteMessageDelegate rmd = new WriteMessageDelegate(WriteMessage);

            
//记录异步调用的结果
            AsyncResult result;

            
//异步调用
            result = (AsyncResult)rmd.BeginInvoke(str, nullnull);
            
            
//判断是否异步调用完成
            while (result.IsCompleted)
            
{
                         rmd.EndInvoke(result);
                }

        }


        
private void WriteMessage(string msg)
        
{
               
//写一个文件
               using (StreamWriter sw = new StreamWriter(@"D:\TestFile.txt"))
             
{
                      sw.Write(msg);
                }

             }

    }



调用代码aspx:
 MessageClass msg = new MessageClass();
 msg.AysncWriteMessage(
"测试");

不知道这算不算个很好例子,第一次写,欢迎拍砖
posted @ 2007-04-10 17:03  WEBBER  阅读(384)  评论(5)    收藏  举报