<dfn id="7pnvb"><del id="7pnvb"><form id="7pnvb"></form></del></dfn>

      <form id="7pnvb"></form>

        <b id="7pnvb"><strike id="7pnvb"></strike></b>

          <form id="7pnvb"></form>
          現在的位置: 首頁 > web前端 > 正文

          dispatch代碼怎么寫

          2020年07月21日 web前端 ⁄ 共 1152字 ⁄ 字號 評論關閉

            之前已經介紹了dispatch_semaphore的底層實現,dispatch_group的實現是基于前者的。在看源碼之前,我們先看一下我們是如何應用的。假設有這么場景:有一個A耗時操作,B和C兩個網絡請求和一個耗時操作C當ABC都執行完成后,刷新頁面。我們可以用dispatch_group實現。


            dispatch關鍵如下:


            -(void)viewDidLoad{


            [superviewDidLoad];


            __blockNSIntegernumber=0;


            dispatch_group_tgroup=dispatch_group_create();


            //A耗時操作


            dispatch_group_async(group,dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{


            sleep(3);


            number+=2222;


            });


            dispatch的代碼


            //B網絡請求


            dispatch_group_enter(group);


            [selfsendRequestWithCompletion:^(idresponse){


            number+=[responseintegerValue];


            dispatch_group_leave(group);


            }];


            //C網絡請求


            dispatch_group_enter(group);


            [selfsendRequestWithCompletion:^(idresponse){


            number+=[responseintegerValue];


            dispatch_group_leave(group);


            }];


            dispatch_group_notify(group,dispatch_get_main_queue(),^{


            NSLog(@"%zd",number);


            });


            }


            -(void)sendRequestWithCompletion:(void(^)(idresponse))completion{


            //模擬一個網絡請求


            dispatch_queue_tqueue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);


            dispatch_async(queue,^{


            sleep(2);


            dispatch_async(dispatch_get_main_queue(),^{


            if(completion)completion(@1111);


            });


            });


            }


            總之,dispatch給大家簡單的介紹了一些,希望大家多看看。


            

          抱歉!評論已關閉.

          新婚之夜我被十几个男人一起_60歳の熟女セックス_肚兜下的浑圆被揉捏np_漂亮的小峓子4在钱免费

              <dfn id="7pnvb"><del id="7pnvb"><form id="7pnvb"></form></del></dfn>

              <form id="7pnvb"></form>

                <b id="7pnvb"><strike id="7pnvb"></strike></b>

                  <form id="7pnvb"></form>