win8異步編程

win8異步有兩種模式:PPL task, WinRT的異步API 和混合模式


異步編程通常在系統線程庫分配線程,屬於多線程編程。這一點和以前windows的編程接口有很大的不同。

win8異步編程大量使用了Lambda表達式(http://technet.microsoft.com/zh-cn/library/dd293603(v=vs.110).aspx

常用的語法:[](){}

[]表示函數體帶入的局部變量,默認值傳遞,加&表示引用傳遞

()表示傳入的參數

{}表示函數體


並行模板庫PPL task: 

task<void> t([](){

int i=0; 

i++;

})


WinRT異步API:

IAsyncActionIAsyncActionWithProgressIAsyncOperation 和 IAsyncOperationWithProgress


IAsyncOperationWithProgress<SyndicationFeed, RetrievalProgress> op;
            op = client.RetrieveFeedAsync(feedUri);

            op.Completed = (info, status) =>
            {
                SyndicationFeed feed = info.GetResults();
                UpdateAppWithFeed(feed);
            };


混合模式:用PPL task封裝了WinRT異步API


參考:http://blogs.msdn.com/b/windowsappdev_cn/archive/2012/03/26/windows.aspx

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章