【发布时间】:2021-03-02 08:53:27
【问题描述】:
我正在合并两个发布者:
let timer = Timer.publish(every: 10, on: .current, in: .common).autoconnect()
let anotherPub: AnyPublisher<Int, Never> = ...
Publishers.CombineLatest(timer, anotherPub)
.sink(receiveValue: (timer, val) in {
print("Hello!")
} )
很遗憾,直到两个发布者都发出至少一个元素后才调用 sink。
有什么方法可以在不等待所有发布者的情况下调用接收器? 因此,如果任何发布者发出一个值,就会调用 sink 并将其他值设置为 nil。
【问题讨论】: