반응형
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 | 29 | 30 | 31 |
Tags
- operator
- Operators
- NullObject
- SWIFT
- ios14
- init?
- dismiss
- RxCocoa
- NavigationLink
- nonisolated
- nestjs
- graphql
- init
- SwiftUI
- @Environment
- Operater
- swift6
- RxSwift
- vim
- typeorm
- Xcode
- Bug
- URL(string:)
- IOS
- Creating Operators
- RFC1738/1808
- @EnvironmentObject
- @Binding
- subject
- @State
Archives
- Today
- Total
Tunko Development Diary
Subject 란? 본문
Subject는 옵저버블의 기능과 옵저버의 기능을 같이 가지고 있습니다.
옵저버블은 옵저버에게 이벤트를 방출합니다. 옵저버는 옵저버블을 구독합니다.
하지만 옵저버가 이벤트를 방출 할 수 없고 옵저버블또한 옵저버를 구독할 수 없습니다.
이것을 가능하게 하는 두가지의 기능을 함께 가지고있는게 Subject입니다.
Subject의 종류 및 특징
- PublishSubject
- Subject로 전달되는 이벤트를 구독자로 전달합니다.
- BehaviorSubject
- 생성 시점에 시작 이벤트를 지정합니다.
- 전달받은 이벤트중에 가장 마지막 이벤트를 저장해 두었다가 새로운 구독자에게 최신이벤트로 방출합니다.
- ReplaySubject
- 하나 이상의 최신 이벤트를 버퍼에 저장합니다.
- 옵저버가 구독을 시작하면 버퍼에 있는 모든 이벤트를 전달합니다.
- AsyncSubject
- Subject로 전달되는 이벤트중 Completed 이벤트가 전달되는 시점에 마지막으로 전달되는 onNext 이벤트를 전달합니다.
Reley
RxSwift 는 Subject를 랩핑하는 두개의 Reley를 제공합니다.
- PublishRelay
- BehaviorRelay
Reley는 Completed, Error 이벤트를 전달하지 않습니다.
Next 이벤트만 전달됩니다.
즉, 종료되지 않는 지속적으로 이벤트를 받을 용도로 사용됩니다.
반응형
'Development > RxSwift' 카테고리의 다른 글
RxSwift) BehaviorSubject 란? (0) | 2022.05.30 |
---|---|
RxSwift) PublishSubject 란? (0) | 2022.05.30 |
RxSwift) Operators 란? (0) | 2022.05.30 |
RxSwift) Disposables 란? (0) | 2022.05.30 |
RxSwift) Observables 과 Observers (0) | 2022.05.30 |
Comments