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()
            }
           
        }

你可能感兴趣的:(gcd 信号 多个网络请求完成)