Today I Learn 220502
์ค๋์ ๋น๋๊ธฐ์ ๋๊ธฐ์ ๋ํด ๋ฐฐ์ ๋ค. ๋น๋๊ธฐ์ ๋๊ธฐ์ ๊ฐ๋ ์ ๋ค์๊ณผ ๊ฐ๋ค.
- ๋๊ธฐ :์์ฐจ์ , ์ง๋ ฌ์ Task ์ํ , ์์ฒญ์ ๋ณด๋ธ ํ ์๋ต์ ๋ฐ์์ผ๋ง ๋ค์ ๋์์ด ์ด๋ฃจ์ด์ง (blocking)
- ๋น๋๊ธฐ :๋ณ๋ ฌ์ Task ์ํ, ์์ฒญ์ ๋ณด๋ธ ํ ์๋ต์ ๊ธฐ๋ค๋ฆฌ์ง ์๊ณ ๋ค์ ๋์์ด ์ด๋ฃจ์ด์ง (non-blocking)
JavaScript๋ single threaded์ฌ์ ์ปดํจํฐ๊ฐ ์ฌ๋ฌ๊ฐ์ CPU๋ฅผ ๊ฐ์ง๊ณ ์์ด๋ main thread๋ผ ๋ถ๋ฆฌ๋ ๋จ์ผ ์ค๋ ๋์์๋ง ์์ ์ ์ํํ๋ค. ์ด๋ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๋ Call Stack์ด ํ๋๋ผ๋ ๊ฒ์ ์๋ฏธํ๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด JavaScript๋ ์ฆ์ ์ฒ๋ฆฌํ์ง ๋ชปํ๋ ์ด๋ฒคํธ๋ค์ ๋ค๋ฅธ๊ณณ (Web API)์ผ๋ก ๋ณด๋ด์ ์ฒ๋ฆฌํ๋๋ก ํ๊ณ , ์ฒ๋ฆฌ๋ ์ด๋ฒคํธ๋ค์ ์ฒ๋ฆฌ๋ ์์๋๋ก ๋๊ธฐ์ค(Task queue)์ ์ค์ ์ธ์ ๋๊ณ , Call Stack์ด ๋น๋ฉด ๋ด๋น์(Event Loop)๊ฐ ๋๊ธฐ์ค์์ ๊ฐ์ฅ ์ค๋๋(์ ์ผ ์์) ์ด๋ฒคํธ๋ฅผ Call Stack์ผ๋ก ๋ณด๋ธ๋ค.
'๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง 2022.05.06.๊ธ (0) | 2022.05.06 |
---|---|
๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง 2022.05.03.ํ (0) | 2022.05.03 |
๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง 2022.04.28.๋ชฉ (0) | 2022.05.02 |
๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง 2022.04.27.์ (0) | 2022.05.02 |
๐๐จ๐๐๐ฒ ๐ ๐๐๐๐ซ๐ง 2022.04.25.์ (0) | 2022.04.25 |
๋๊ธ