一、主隊列介紹
主隊列:是和主線程相關聯的隊列,主隊列是gcd自帶的一種特殊的串行隊列,放在主隊列中得任務,都會放到主線程中執行。
提示:如果把任務放到主隊列中進行處理,那麼不論處理函數是異步的還是同步的都不會開啟新的線程。
擷取主隊列的方式:
dispatch_queue_t queue=dispatch_get_main_queue();
(1)使用異步函數執行主隊列中得任務,代碼示例:


執行效果:
(2)使用同步函數,在主線程中執行主隊列中得任務,會發生死循環,任務無法往下執行。示意圖如下:
二、基本使用
1.問題
任務1和任務2是在主線程執行還是子線程執行,還是單獨再開啟一個新的線程?


列印結果:
2.開啟子線程,加載圖檔


顯示效果:
要求使用gcd的方式,在子線程加載圖檔完畢後,主線程拿到加載的image重新整理ui界面。


好處:子線程中得所有資料都可以直接拿到主線程中使用,更加的友善和直覺。
三、線程間通信
從子線程回到主線程

