gcd 信号 多个网络请求完成

    let semaphore  = DispatchSemaphore.init(value: 0)
        let group  = DispatchGroup.init()
        let queue  = DispatchQueue.global()
        
        queue.async (group: group) {
            self.loadData {
                print("zhu==1")
                semaphore.signal()
            }
        }
        
        queue.async(group:group){
            self.loadDataPositon {
                print("zhu==2")
                semaphore.signal()
            }
        }
        
        group.notify(queue: queue){
            semaphore.wait()    - 1
            semaphore.wait()    - 1
             print("zhu==all")
            DispatchQueue.main.async {
                 self.tableView.reloadData()
            }
           
        }
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容