reference to : http://www.jianshu.com/p/4c983388dca6
估計現在好多人在為這一塊頭疼,是以先來點幹貨。
1
2
3
4
5
6
7
8
<code>//最常用模闆</code>
<code>//全局隊列異步執行</code>
<code>DispatchQueue</code><code>.</code><code>global</code><code>().</code><code>async</code> <code>{</code>
<code> </code><code>//耗時操作</code>
<code> </code><code>DispatchQueue</code><code>.</code><code>main</code><code>.</code><code>async</code> <code>{</code>
<code> </code><code>//回到主線程</code>
<code> </code><code>}</code>
<code>}</code>
9
10
11
12
13
14
15
16
17
18
19
20
<code>//建立新隊列</code>
<code>DispatchQueue</code><code>(</code><code>label</code><code>: </code><code>"newQueue"</code><code>, </code><code>attributes</code><code>: .</code><code>concurrent</code><code>, </code><code>target</code><code>: </code><code>nil</code><code>).</code><code>async</code> <code>{</code>
<code> </code><code>//并行隊列異步執行</code>
<code>DispatchQueue</code><code>(</code><code>label</code><code>: </code><code>"newQueue"</code><code>, </code><code>attributes</code><code>: .</code><code>concurrent</code><code>, </code><code>target</code><code>: </code><code>nil</code><code>).</code><code>sync</code> <code>{</code>
<code> </code><code>//并行隊列同步執行</code>
<code>DispatchQueue</code><code>(</code><code>label</code><code>: </code><code>"newQueue"</code><code>).</code><code>async</code> <code>{</code>
<code> </code><code>//串行隊列異步執行</code>
<code>DispatchQueue</code><code>(</code><code>label</code><code>: </code><code>"newQueue"</code><code>).</code><code>sync</code> <code>{</code>
<code> </code><code>//串行隊列同步執行</code>
<code>let</code> <code>delay</code><code>:</code><code>TimeInterval</code> <code>= </code><code>3</code>
<code>DispatchQueue</code><code>.</code><code>main</code><code>.</code><code>asyncAfter</code><code>(</code><code>deadline</code><code>: </code><code>DispatchTime</code><code>.</code><code>now</code><code>() + </code><code>delay</code><code>) {</code>
<code> </code><code>//3秒後在主線程執行</code>
<code>dispatch_block_t</code>在swift3.0已經沒了 <code>dispatch_block_t</code>等價于<code>() -> void</code>
<code>dispatch_queue_t</code>等價于<code>DispatchQueue</code>
自己看文法特點
大緻這麼多差不多就能解決大部分問題了,其它自己根據GCD自己對号入座。
本文轉自demoblog部落格園部落格,原文連結http://www.cnblogs.com/0616--ataozhijia/p/6932190.html如需轉載請自行聯系原作者
demoblog