用委托开启一个线程
IAsyncResult ar = 委托名.BeginInvoke(参数...,回调函数,回调函数参数)
回调函数在线程结束的时候调用
ar.isCompleted;//可以判断线程是否结束
ar.AsyncWaitHanle.WaitOne(等待最大时间);//暂停到线程完成时
如果线程在最大时间内结束返回true,否则返回false
返回结果 = 委托名.EndInvoke(ar);
ar.AsyncState;//获取回调函数传的参数,用来传委托名过来等
回调函数自动传递IAsyncResult ar参数