Bibi's DevLog πŸ€“πŸŽ

[iOS] main thread, global thread 메인 μŠ€λ ˆλ“œ(μΈν„°νŽ˜μ΄μŠ€ μŠ€λ ˆλ“œ), κΈ€λ‘œλ²Œ μŠ€λ ˆλ“œ(λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œ) λ³Έλ¬Έ

πŸ“±πŸŽ iOS

[iOS] main thread, global thread 메인 μŠ€λ ˆλ“œ(μΈν„°νŽ˜μ΄μŠ€ μŠ€λ ˆλ“œ), κΈ€λ‘œλ²Œ μŠ€λ ˆλ“œ(λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œ)

λΉ„λΉ„ bibi 2022. 3. 25. 12:28

[iOS] main thread, global thread 메인 μŠ€λ ˆλ“œ(μΈν„°νŽ˜μ΄μŠ€ μŠ€λ ˆλ“œ), κΈ€λ‘œλ²Œ μŠ€λ ˆλ“œ(λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œ)

https://babbab2.tistory.com/65?category=831129

Main Thread 메인 μŠ€λ ˆλ“œ (Interface Thread μΈν„°νŽ˜μ΄μŠ€ μŠ€λ ˆλ“œ)

  • iOS μ—μ„œ 메인 μŠ€λ ˆλ“œλŠ” 였직 ν•œ 개만 μ‘΄μž¬ν•¨
  • 메인 μŠ€λ ˆλ“œλŠ” μΈν„°νŽ˜μ΄μŠ€ μŠ€λ ˆλ“œλΌκ³ λ„ 함 : UI와 κ΄€λ ¨λœ μž‘μ—…μ€ λ°˜λ“œμ‹œ 메인 μŠ€λ ˆλ“œμ—μ„œ μž‘μ„±ν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έ.
  • 메인 μŠ€λ ˆλ“œλŠ” Main Queue μ—μ„œ μ‹€ν–‰λ˜λŠ”λ°, Main Queue λŠ” Serial Queue 이기 λ•Œλ¬Έμ—, ν•œ λ²ˆμ— ν•˜λ‚˜μ˜ μž‘μ—…λ§Œ 싀행함.
    • λ”°λΌμ„œ UI에 영ν–₯을 쀄 λ§Œν•œ μ½”λ“œλ“€μ€ 메인 μŠ€λ ˆλ“œκ°€ μ•„λ‹Œ μ•„λž˜μ˜ Global Thread 둜 μ‹€ν–‰ν•΄μ•Ό 함.

Global Thread κΈ€λ‘œλ²Œ μŠ€λ ˆλ“œ (Background Thread λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œ)

  • μ½”λ“œ 싀행이 였래 κ±Έλ¦¬λŠ” μž‘μ—…μ€ λͺ¨λ‘ κΈ€λ‘œλ²Œ μŠ€λ ˆλ“œ(= λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œ)μ—μ„œ μ‹€ν–‰μ‹œμΌœ μ€˜μ•Ό 함.
    • μ™œ? 메인 μŠ€λ ˆλ“œμ—μ„œ μ‹€ν–‰ν•˜λ©΄ Main Queuerκ°€ Serial Queue μ΄λ―€λ‘œ μ–΄λ–€ μž‘μ—…μ„ ν•˜λŠ” λ™μ•ˆ λ‹€λ₯Έ μž‘μ—…μ„ ν•  수 μ—†μ–΄ 화면이 멈좰 있기 λ•Œλ¬Έ.
  • iOS의 ν”„λ ˆμž„μ›Œν¬λ“€ μ—­μ‹œ λͺ¨λ‘ λ°±κ·ΈλΌμš΄λ“œ μŠ€λ ˆλ“œμ—μ„œ 싀행됨.
    • ν•„μš”ν•  λ•Œλ§Œ 메인 μŠ€λ ˆλ“œμ— 손을 λ»—λŠ”(Delegate) κ΅¬μ‘°μž„