我正在尝试使用 Swift combine 运行许多具有相同结果的任务。目前,每个任务都是一个将发出结果的发布者。现在我面临一个问题,我必须等待所有发布者发出元素然后继续。有点像调度组。我发现 zip(with: : :_) 操作符需要 4 个发布者。
https://developer.apple.com/documentation/combine/passthroughsubject/3333571-zip
但是如果您有一组发布者(以防它们发出相同类型的元素)怎么办?有没有办法做到这一点?
Dáv*_*tor 27
您可以使用MergeMany创建一个下游来接收来自多个上游的所有发出的值,然后调用collect()合并的发布者一次发出所有值。
let pubs = [Just(1),Just(2),Just(3)]
let downstream = Publishers.MergeMany(pubs).collect()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6920 次 |
| 最近记录: |