Publishers.TryCatch

์ œ๋„ค๋ฆญ ๊ตฌ์กฐ์ฒด | ์‹คํŒจํ•˜๋Š” Publisher๋ฅผ ๋‹ค๋ฅธ Publisher๋กœ ๊ต์ฒดํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ์—๋Ÿฌ๋ฅผ ๋‚ด๋Š” ๊ฒƒ์œผ๋กœ ์ƒ์œ„์— ํ๋ฅด๋Š” Publisher๋กœ๋ถ€ํ„ฐ ์—๋Ÿฌ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” Publisher

์ด๋‹ˆ์…œ๋ผ์ด์ €๋Š” ๋‘ ๊ฐœ์˜ ์ธ์ž๋ฅผ ๋ฐ›๋Š”๋‹ค.

  • upstream : ์ƒ์œ„์— ํ๋ฅด๋Š” Publisher

  • handler : ์ƒ์œ„์— ํ๋ฅด๋Š” Publisher๊ฐ€ ์—๋Ÿฌ๋ฅผ ๋‚ด๋Š” ๊ฒฝ์šฐ ๊ทธ ์‹คํŒจ๋ฅผ ์ธ์ž๋กœ ๋ฐ›์•„ ์ƒ์œ„ Publisher๋ฅผ ๊ต์ฒดํ•  ์ƒˆ๋กœ์šด Publisher๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ฑฐ๋‚˜ ์—๋Ÿฌ๋ฅผ ๋˜์ง€๋Š” ํด๋กœ์ €

์ƒ์œ„์— ํ๋ฅด๋Š” Publisher์™€ ์ด๋ฅผ ๋Œ€์ฒดํ•  Publisher์˜ Output ํƒ€์ž…์€ ๋™์ผํ•ด์•ผ ํ•œ๋‹ค.

์ƒ์œ„ Publisher๊ฐ€ ์—๋Ÿฌ๋ฅผ ๋‚ด๋Š” ๊ฒฝ์šฐ ์—๋Ÿฌ๋ฅผ ๋‚ด๋ฉฐ ์ข…๋ฃŒํ•˜๋Š” ๋Œ€์‹  ๋‹ค๋ฅธ Publisher๋กœ ๋Œ€์ฒดํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ์—๋Ÿฌ๋ฅผ ๋‚ธ๋‹ค.

tryCatch ์˜คํผ๋ ˆ์ดํ„ฐ์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค.

Publishers.Catch์˜ ๋™์ž‘๊ณผ ๊ฐ™์œผ๋‚˜ ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•˜๋‹ค๊ฐ€ ์—๋Ÿฌ๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

RxSwift

catchError ์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

ReactiveSwift

ํ•ด๋‹น ๋™์ž‘์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์˜คํผ๋ ˆ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ฐธ๊ณ 

ReactiveX - Operators - Catch

Publishers.Catch

Last updated