您的位置:首页 > 其它

两线程异步执行,中间等待另一线程执行完再执行

2011-01-29 16:06 316 查看
--主线程中

Stats=false;

AsyncOutPutHandler handler = new AsyncOutPutHandler(ExcelW.ConvertDataTableToRecordset);
AsyncCallback callback = new AsyncCallback(ExcelW.Convert_Completed);

--异步线程调用
handler.BeginInvoke(DT, callback, null);

--主线程其他代码

......

--等待异步线程 Stats 为全局

while (!Stats)
{
}

-----------------------------------------------------------------------------------------------

异步调用了方法 ConvertDataTableToRecordset

此方法调用完后直接回调方法 ExcelW.Convert_Completed 将全局Stats设为TRUE

定义全局委托

private delegate void AsyncOutPutHandler(System.Data.DataTable dt);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: