Empty
์ ๋ค๋ฆญ ๊ตฌ์กฐ์ฒด | ์ด๋ ํ ๊ฐ๋ ์ ๋ ๋ฐํํ์ง ์์ผ๋ฉฐ, ์ ํ์ ์ผ๋ก ์ฆ์ ์ข ๋ฃํ๋ Publisher
๋ ๊ฐ์ ์ด๋์ ๋ผ์ด์ ๋ฅผ ์ ๊ณตํ๋ค.
init(completeImmediately:)
์ธ์์ ๊ธฐ๋ณธ๊ฐ์ true์ด๋ค.
์ธ์์ ๊ฐ์ด true์ด๋ฉด ์ฆ์ ์ข ๋ฃํ๊ณ , false์ด๋ฉด ์ข ๋ฃํ์ง ์๋๋ค.
init(completeImmediately:outputType:failureType)
completeImmediately
์ธ์์ ๊ธฐ๋ณธ๊ฐ์ true์ด๋ฉฐ, ๊ฐ์ ๋ฐ๋ฅธ ๋์ ๋ณํ๋ ์์ ๊ฐ๋ค.outputType
๊ณผfailureType
์ ํด๋น Publisher๋ฅผ Subscriber๋ ๋ค๋ฅธ Publisher์ ์ฐ๊ฒฐํ ๋ ์ฐ๊ฒฐํ ๋์์ Output ํ์ ๊ณผ ์๋ฌ ํ์ ์ ๋ง์ถ๊ธฐ ์ํด ๋ช ์ํด ์ค๋ค.๊ทธ๋ฌ๋ฏ๋ก ์ธ์์ ๋ฉํ ํ์ ์ ์ ๋ฌํ๋ค.
๊ฐ์ ์ ๋ฌํ๊ณ ์ถ์ง ์์ผ๋ฉฐ, ์ฆ์ ์ข ๋ฃํ๊ฑฐ๋ ์ข ๋ฃํ์ง ์๋ Publisher๋ฅผ ๋ง๋ค๊ณ ์ถ์ ๋ ์ฌ์ฉํ๋ค.
Emtpy๋ ๊ฐ์ ๋ด์ง ์์ผ๋ฏ๋ก receiveValue
ํด๋ก์ ์์๋ ๋์์ ํ์ธํ ์ ์๊ณ , receiveCompletion
ํด๋ก์ ์์ ์ข
๋ฃํ๋ ๋์์ ํ์ธํ ์ ์๋ค.
1๋ฒ ์ฝ๋์ ๊ฒฝ์ฐ Publisher๊ฐ ๋ฐ๋ก ์ข
๋ฃํ์ฌ receiveCompletion
์ ๋ฑ๋กํ ํด๋ก์ ๊ฐ ์คํ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
2๋ฒ ์ฝ๋์ ๊ฒฝ์ฐ Publisher๊ฐ ์ข ๋ฃํ์ง ์์ผ๋ฏ๋ก ์๋ฌด๋ฐ ์ถ๋ ฅ๋ ํ์ธํ ์ ์๋ค.
RxSwift
empty
๋ฐ never
์คํผ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์๋ค.
empty
์คํผ๋ ์ดํฐ๋Empty(completeImmediately: true)
์ ๋์๊ณผ ๊ฐ๋ค.never
์คํผ๋ ์ดํฐ๋Empty(completeImmediately: false)
์ ๋์๊ณผ ๊ฐ๋ค.
ReactiveSwift
empty
๋ฐ never
์คํผ๋ ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์๋ค.
empty
์คํผ๋ ์ดํฐ๋Empty(completeImmediately: true)
์ ๋์๊ณผ ๊ฐ๋ค.never
์คํผ๋ ์ดํฐ๋Empty(completeImmediately: false)
์ ๋์๊ณผ ๊ฐ๋ค.
์ฐธ๊ณ
Last updated
Was this helpful?