๊ด€๋ฆฌ ๋ฉ”๋‰ด

Welcome! Everything is fine.

[Kotlin] ์ฝ”๋ฃจํ‹ด๊ณผ ์Šค๋ ˆ๋“œ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”? ๋ณธ๋ฌธ

Kotlin

[Kotlin] ์ฝ”๋ฃจํ‹ด๊ณผ ์Šค๋ ˆ๋“œ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

๊ฐœ๋ฐœ๊ณฐ๋ฐœ 2024. 11. 11.
728x90

๐Ÿ’ญ ๋ฉด์ ‘์—์„œ ๋ฐ›์€ ์งˆ๋ฌธ์„ ๊ฐ„๋‹จํžˆ ํฌ์ŠคํŒ…ํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

 

Q. ์ฝ”๋ฃจํ‹ด๊ณผ ์Šค๋ ˆ๋“œ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

A. ์ฝ”๋ฃจํ‹ด๊ณผ ์Šค๋ ˆ๋“œ๋Š” ๋‘˜ ๋‹ค ๋น„๋™๊ธฐ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜์ง€๋งŒ, ๋™์ž‘ ๋ฐฉ์‹๊ณผ ํšจ์œจ์„ฑ์—์„œ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šค๋ ˆ๋“œ๋Š” ์šด์˜์ฒด์ œ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋…๋ฆฝ์ ์ธ ์‹คํ–‰๋‹จ์œ„๋กœ, ์ƒˆ๋กœ์šด ์Šค๋ ˆ๋“œ๋ฅผ ๋งŒ๋“ค๋ฉด ์ผ์ •ํ•œ ๋ฉ”๋ชจ๋ฆฌ์™€ ์ž์›์„ ์†Œ๋น„ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์Šค๋ ˆ๋“œ๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋ฉ”๋ชจ๋ฆฌ์™€ CPU๋ฅผ ๋” ๋งŽ์ด ์‚ฌ์šฉํ•ด ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด, ์ฝ”๋ฃจํ‹ด์€ ์ฝ”ํ‹€๋ฆฐ์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๊ฒฝ๋Ÿ‰ ์Šค๋ ˆ๋“œ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰์„ ์ผ์‹œ์ค‘๋‹จํ•˜๊ณ  ๋‹ค๋ฅธ ์ฝ”๋ฃจํ‹ด์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋น„๋™๊ธฐ ์ž‘์—…์˜ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. ์ฝ”๋ฃจํ‹ด์€ ์Šค๋ ˆ๋“œ์— ๋น„ํ•ด ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ ๊ฒŒ ์‚ฌ์šฉํ•˜๊ณ , ์‹คํ–‰ ์†๋„๋„ ๋” ๋นจ๋ผ ๋งŽ์€ ๋น„๋™๊ธฐ ์ž‘์—…์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

โœ”๏ธ ์ฝ”๋ฃจํ‹ด์€ ์ž‘์—…๋งˆ๋‹ค ์Šค๋ ˆ๋“œ๋ฅผ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ Object๋ฅผ ํ• ๋‹นํ•˜๊ณ  ์Šค์œ„์นญํ•˜๋ฉด์„œ  Context Switching ๋น„์šฉ์„ ์ค„์ธ๋‹ค.