加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Swift3.0--GCD

发布时间:2020-12-14 06:42:43 所属栏目:百科 来源:网络整理
导读:估计现在好多人在为这一块头疼,所以先来点干货。 //最常用模板//全局队列异步执行DispatchQueue.global().async { //耗时操作 DispatchQueue.main.async { //回到主线程 }} //创建新队列DispatchQueue(label: "newQueue",attributes: .concurrent,target: n

估计现在好多人在为这一块头疼,所以先来点干货。

//最常用模板
//全局队列异步执行
DispatchQueue.global().async {
    //耗时操作
    DispatchQueue.main.async {
        //回到主线程
    }
}
//创建新队列
DispatchQueue(label: "newQueue",attributes: .concurrent,target: nil).async {
    //并行队列异步执行
}
//创建新队列
DispatchQueue(label: "newQueue").async {
    //串行队列异步执行
}
//创建新队列
DispatchQueue(label: "newQueue").sync {
    //串行队列同步执行
}
let delay:TimeInterval = 3
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + delay) {
    //3秒后在主线程执行
}

dispatch_block_t在swift3.0已经没了dispatch_block_t等价于() -> void
dispatch_queue_t等价于DispatchQueue 自己看语法特点 大致这么多差不多就能解决大部分问题了,其它自己根据GCD自己对号入座。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读