반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- RxSwift
- Bug
- RxCocoa
- dismiss
- nestjs
- subject
- URL(string:)
- NavigationLink
- NullObject
- vim
- @Environment
- ios14
- @EnvironmentObject
- @Binding
- IOS
- Operater
- swift6
- Operators
- operator
- init?
- SWIFT
- @State
- graphql
- init
- Xcode
- typeorm
- nonisolated
- RFC1738/1808
- Creating Operators
- SwiftUI
Archives
- Today
- Total
Tunko Development Diary
RxSwift) Conditional Operators(amb) 본문
amb
amb연산자는 두개 이상의 옵저버블 중에 먼저 이벤트가 발생한 것에서만 구독을 합니다. 이후 다른 옵저버에서 Next이벤트가 발생해도 무시됩니다.
let disposeBag = DisposeBag()
enum TunkoError: Error {
case error
}
let subject1 = PublishSubject<String>()
let subject2 = PublishSubject<String>()
let subject3 = PublishSubject<String>()
Observable.amb([subject1, subject2, subject3])
// subject1.amb(subject2) // 두개의 옵저버블일때 문법
.subscribe { print($0) }
.disposed(by: bag)
subject1.onNext("🍊")
subject2.onNext("🍓")
subject3.onNext("🍎")
subject2.onCompleted()
subject3.onError(TunkoError.error)
출력
next(🍊)
출력결과를 보면 subject2, subject3 의 next, error, completed 전부 무시된것을 확인할 수 있습니다.
반응형
'Development > RxSwift' 카테고리의 다른 글
RxSwift) Time-based Operators(timer, timeout) (0) | 2022.06.07 |
---|---|
RxSwift) Time-based Operators ( interval ) (0) | 2022.06.06 |
RxSwift) Transforming Operators(withLatestFrom, sample, switchLatest) (0) | 2022.06.06 |
RxSwift) Transforming Operators (combineLatest, zip) (0) | 2022.06.04 |
RxSwift) Transforming Operators (merge) (0) | 2022.06.04 |
Comments