Пока я пробовал что -то вроде этого: < /p>
Код: Выделить всё
let subject = PassthroughSubject()
let result = subject.flatMap(maxPublishers: .max(1)) {
Just($0).delay(for: 1, scheduler: RunLoop.main)
}
let cancellable = result.sink {
print("--- value \($0) ---")
}
// Emitting values
subject.send(1)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) {
subject.send(2)
}
DispatchQueue.main.asyncAfter(deadline: .now() + 0.6) {
subject.send(3)
}
DispatchQueue.main.asyncAfter(deadline: .now() + 2.5) {
subject.send(4)
}
< /code>
Но результат, который я получаю: < /p>
--- value 1 ---
--- value 4 ---
Подробнее здесь: https://stackoverflow.com/questions/765 ... -publisher
Мобильная версия