swift-自定义异步回调

2019-12-11  本文已影响0人  久百一
//
//  main.swift
//  cApp
//
//  Created by 王鹏 on 12/11/19.
//  Copyright © 2019 wangpeng. All rights reserved.
import Foundation
enum NetworkError: Error {
    case badURL
}
import Foundation
//定义异步返回类型
enum createResult {
    case success
    case error(str:String)
}
func create(name:String,completionHandler: @escaping(createResult) -> Void ) {
    DispatchQueue.global().async {
        //模拟Http线程内请求  阻塞5秒
        sleep(2)
        //模拟返回失败结果
        completionHandler(.error(str: "name = \(name)"))
    }
}

//执行create添加方法
create(name: "zhangsan") { result in
    switch result{
    case .error(let errorMsg):
        print("Error:\(errorMsg)")
        break;
    case .success:
        print("Success:操作成功)")
        break
    }
}
print("==end")
sleep(1000)

上一篇 下一篇

猜你喜欢

热点阅读