DispatchSource 之 add

创建自定义队列 Queue , 将 source event handler 提交到 Queue 中去。
soure.add(data: count) 来触发 事件, source 的 queue 异步接收,过程中,会合并数据。合并的时机不确定,貌似可以可用来,做进度展示,比较合适

let queue = DispatchQueue(label: "myqueue")
let source = DispatchSource.makeUserDataAddSource(queue: queue);
source.setEventHandler {
    print("\(source.data)....\(Thread.current)")
}

//source.activate()
source.resume()
print("0-----")
print("1-----")
var count:UInt = 1
repeat {
    count += 1
    source.add(data: count)
    print("\(count)")
} while (count < 5)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容