๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿค2024 ์•ˆ๋“œ๋กœ์ด๋“œ/โ˜€๏ธ ํ•˜๊ณ„ ์ธํ„ด ๊ฐœ๋ฐœ ํ”„๋กœ์ ํŠธ ๊ธฐ๋ก

Android : suspend function์ด๋ž€?

by hyeonha 2024. 8. 29.

๋ชฉ์ฐจ

    suspend function๊ฐ€ ํ•„์š”ํ•œ ์ด์œ , ์ด๊ฒƒ์ด ์—†๋‹ค๋ฉด ?

    ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ๊ฐ€ block ๋˜๋ฉด ํ•ด๋‹น thread๋Š” ๋‹ค๋ฅธ ์ž‘์—…์„ ํ•  ์ˆ˜ ์—†๋Š” block ์ƒํƒœ์— ๋†“์ด๊ฒŒ ๋œ๋‹ค.

    ์ฆ‰ blocked ์ƒํƒœ๊ฐ€ ๋๋‚  ๋•Œ๊นŒ์ง€ ํ•ด๋‹น ์Šค๋ ˆ๋“œ๋Š” ์ค‘์ง€ ์ƒํƒœ์ธ ๊ฒƒ์ด๋‹ค!

    ๊ทธ๋Ÿฌ๋‚˜ suspend ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด blocked ๋œ ์ƒํƒœ์— ๋†“์ผ ๋•Œ, ๊ทธ ์ž‘์—…์„ suspend ํ•˜๊ณ  ๊ทธ ๊ธฐ๊ฐ„๋™์•ˆ thread์—์„œ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    ๋šฑ์ด์˜ ํ•˜๋ฃจ : ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ

    ์•ˆ๋“œ ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค๊ฐ€ ๋นŒ๋“œ ์‹œ๊ฐ„์ด 3๋ถ„ !!! ๊ฑธ๋ฆฌ๋Š” ํ”Œ์ ์„ ๋นŒ๋“œ์‹œํ‚ด : 3๋ถ„๋™์•ˆ blocked ๋‹นํ•œ ์ƒํƒœ

     

    suspend function์˜ ๊ฒฝ์šฐ : ๋นŒ๋“œ๊ฐ€ ๋Œ์•„๊ฐ€๋Š” 3๋ถ„๋™์•ˆ ๋ผ๋ฉด์„ ๋“์ผ ์ˆ˜ ์žˆ์Œ

    suspend function์ด ์•„๋‹Œ ๊ฒฝ์šฐ : ์•ˆ๋“œ ๋นŒ๋“œ๊ฐ€ ๋๋‚  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผํ•จ

     

    ๐Ÿ’ก suspend function์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๊ณผ ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ viewmodelScope.launch {} ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์˜ ์ฐจ์ด๋Š”??

    ๋‹ค์Œ ์‹œ๊ฐ„์— ์•Œ์•„๊ฐ€๋ณด์ž

    728x90