
π μλ°μ€ν¬λ¦½νΈ μ½λκ° JS ENGINEμμ μ΄λ»κ² μλλλμ§ λ³΄μ¬μ£Όλ μ¬μ΄νΈ
μ΄ μ¬μ΄νΈλ κ·Έ μ λΉ....β¨
μ΄λ κ² μ’μ μ¬μ΄νΈ λ§λ€μ΄μ£Όμ
μ μ λ§ μ λ§ κ°μ¬ν©λλ€~!!!

- μλ°μ€ν¬λ¦½νΈμμ λΉλκΈ°λ‘ νΈμΆλλ ν¨μλ€μ νΈμΆ μ€ν(
CALL STACK)μ μμ΄μ§ μκ³TASK QUEUEλ‘ λ³΄λ΄μ§λ€.- λΉλκΈ° μ²λ¦¬λ νΉμ μ½λκ° μ’ λ£λμ§ μμμ΄λ λκΈ°νμ§ μκ³ λ€μ μ½λλ₯Ό μ€ννλ μλ°μ€λ¦½νΈ νΉμ±μ΄λ€.
EVENTLOOPμCALL STACKμ΄ λΉμ΄μμ λλ§TASK QUEUEμ ν¨μλ₯ΌCALL STACKμΌλ‘ κ°μ Έμ¨λ€.
μ½λ°±ν¨μ: λ€λ₯Έ ν¨μμ μΈμλ‘ λ겨μ§λ ν¨μ
πΉ λΉλκΈ°
λΆμ°μ²λ¦¬
λ€λ₯Έ μ€λ λμμ μΌμ νλλ‘ μν€κ³ λμ
κ·Έ μΌμ΄ λλλ κ²μ κ΄μ¬μ΄ μκ³
λ°λ‘ λ€μ λ΄ μλ¦¬λ‘ λμμμ.μμ μ λ€λ₯Έ μ€λ λλ‘ μν€κ³ κΈ°λ€λ¦¬μ§ μμμ.
ν΄λΉ μ€λ λμμ λ€λ₯Έ μΌμ²λ¦¬λ₯Ό μμν μ μμ΄μ.
- μΌλ¨ μμ μ λ€λ₯Έ κ³³μΌλ‘ 보λ΄μ.
- κ·Έλ¦¬κ³ κ·Έ μΌμ΄ λλλμ§ λ§λμ§ λλ μ ν κ΄μ¬νμ§ μμμ.
π μμ μ λ€λ₯Έ μ°λ λμμ νλλ‘ μν¨ ν, κ·Έ μμ μ΄ λλκΈΈ "μ κΈ°λ€λ¦¬κ³ " λ€μ μΌμ μ§ννλ€. μ κΈ°λ€λ €λ λ€μ μμ μ μμ±ν μ μλ€.

πΉ λκΈ°
π μμ μ λ€λ₯Έ μ€λ λμμ νλλ‘ μν¨ν, λ€λ₯Έ μμ μ νμ§ λͺ»νκ² blockνκ³ λ§κ³ μλ, κ·Έ μμ μ΄ κΈλκΈΈ "κΈ°λ€λ Έλ€κ°" λ€μ μΌμ μ§ννλ€. κ·Έ μμ μ΄ λλκΈΈ κΈ°λ€λ¦¬κ³ μκΈ° λλ¬Έμ ν΄λΉ μ€λ λμμλ μμ μ²λ¦¬λ₯Ό λͺ»νκ³ μλ€. κΈ°λ€λ Έλ€κ° λ€μ μμ μ μμ±ν μ μλ€.

πΉ "λΉλκΈ°"λΌλ κ°λ μ΄ νμν μ΄μ ?
π μλ²μμ ν΅μ (λ€νΈμν¬ μμ ) λλ¬Έμμ.
πΉ λΉλκΈ° π ν(QUEUE) Β Β Β Β πΉ λκΈ° π μ€ν(STACK)
πΉ μ§λ ¬μ²λ¦¬ ν (μ§λ ¬μ²λ¦¬)
- λ©μΈμ€λ λμμ νλ μμ μ λ€λ₯Έ μ€λ λλ‘ λ³΄λ΄κΈ΄ ν 건λ°, λ€λ₯Έ νλμ μ€λ λλ‘λ§ λ³΄λ΄λ κ°λ μ΄μμ
π (λ³΄ν΅ λ©μΈμμ) λΆμ°μ²λ¦¬ μν¨ μμ μ "λ€λ₯Έ ν κ°μ μ°λ λμμ" μ²λ¦¬ν΄μ. μμκ° μ€μν μμ μ μ²λ¦¬ν λ μ¬μ©ν΄μ.

πΉ λμμ²λ¦¬ ν (λμμ²λ¦¬)
- λΆμ° μ²λ¦¬μμ λ³΄λΈ μμ λ€μ΄ νκ°μ μ€λ λκ° μλ μ¬λ¬κ°μ μ€λ λλ‘ λΆμ°λμ΄ μ²λ¦¬λΌμ.
π (λ³΄ν΅ λ©μΈμμ) λΆμ°μ²λ¦¬ μν¨ μμ μ "λ€λ₯Έ μ¬λ¬κ°μ μ€λ λμμ" μ²λ¦¬ν΄μ. κ°μ λ 립μ μ΄μ§λ§ (μ€μλλ μμ μ μ±κ²© λ±) μ μ¬ν μ¬λ¬κ°μ μμ μ μ²λ¦¬ν λ μ¬μ©ν΄μ.

πΉ "μ§λ ¬μ²λ¦¬"κ° νμν μ΄μ ?
π μμ μ μμκ° νμν μλ μκΈ° λλ¬Έμμ.
πΉ "λΉλκΈ°" vs "λμ"
"λΉλκΈ°" π μμ μ 보λ΄λ μ€λ λμ κ΄λ ¨λ λ§μ΄μμ. λ©μΈ μ€λ λμμ λ€λ₯Έ μ€λ λλ‘ λ³΄λΈ μμ μ κΈ°λ€λ¦΄μ§ λ§μ§μ κ΄λ ¨λ κ°λ μ΄μμ.
"λμ" π λ©μΈμ€λ λμμ λ€λ₯Έ μ€λ λλ‘ λ³΄λΌ λ 보λ΄μ§λ μ€λ λκ° ν κ°λ μ¬λ¬ κ°λμ κ΄λ ¨λ κ°λ μ΄μμ.
π INGGμ¬μ΄νΈμ [JS] Javascript λμ μ리μ λΉλκΈ°μ²λ¦¬ λΌλ κΈμ μ€λͺ κ³Ό μ¬μ§μ μ΄μ©νμ΄μ.
.png)
π μΈνλ° μ¬μ΄νΈμ [κ·Έλ¦ΌμΌλ‘μ΄ν΄νλ] λκΈ°(sync) λΉλκΈ°(async)μ κ°λ μ λν κ°μ₯ μ§κ΄μ μΈ μ΄ν΄ λΌλ κ°μμ μ€λͺ κ³Ό μμμ μ΄μ©νμ΄μ.
.png)