--- id: P-REINFORCE-AI-CONCUR category: "[[10_Wiki/πŸ’‘ Topics/Programming & Language]]" confidence_score: 0.98 tags: [Concurrent Programming, Multi-threading, Parallelism, Async] last_reinforced: 2026-04-20 --- # [[Concurrent-Programming]] (λ™μ‹œμ„± ν”„λ‘œκ·Έλž˜λ°) ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) > "ν•¨κ»˜ λ‹¬λ¦¬λŠ” 기술." μ—¬λŸ¬ μž‘μ—…μ΄ ν•˜λ‚˜μ˜ μžμ›μ„ 두고 μ‹Έμš°μ§€ μ•Šκ²Œ μ‘°μœ¨ν•˜λ©°, ν•œ λ²ˆμ— λ§Žμ€ 일을 μ²˜λ¦¬ν•˜λŠ” μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜μ΄λ‹€. ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) - **Concurrecy vs Parallelism**: - **Concurrency**: λ…Όλ¦¬μ μœΌλ‘œ μ—¬λŸ¬ μž‘μ—…μ΄ λ™μ‹œμ— μ§„ν–‰λ˜λŠ” 것(Context Switch). - **Parallelism**: 물리적으둜 μ—¬λŸ¬ CPUμ—μ„œ μž‘μ—…μ΄ λ™μ‹œμ— λŒμ•„κ°€λŠ” 것. - **Race Condition & Deadlock**: - μžμ›μ„ 두고 κ²½μŸν•  λ•Œ 데이터가 κΌ¬μ΄κ±°λ‚˜(Race), μ„œλ‘œ κΈ°λ‹€λ¦¬λŠλΌ λ©ˆμΆ°λ²„λ¦¬λŠ”(Deadlock) ν˜„μƒ. 이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ Mutex, Semaphore, Actor model 등이 쓰인닀. - **Asynchronous I/O**: - λ„€νŠΈμ›Œν¬ μš”μ²­μ²˜λŸΌ 였래 κ±Έλ¦¬λŠ” 일을 λ˜μ Έλ‘κ³  λ‹€μŒ 일을 μ²˜λ¦¬ν•˜λ‹€κ°€, μ™„λ£Œλ˜λ©΄ μ•Œλ¦Όμ„ λ°›λŠ” 방식. (JS의 Event Loopκ°€ λŒ€ν‘œμ ). ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (RL Update) - λ™μ‹œμ„±μ€ '곡짜'κ°€ μ•„λ‹ˆλ‹€. μŠ€λ ˆλ“œλ‚˜ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ „ν™˜ν•˜λŠ” μ˜€λ²„ν—€λ“œκ°€ 더 클 μˆ˜λ„ μžˆλ‹€. μ΅œκ·Όμ—λŠ” Coroutine(Go, Rust)μ΄λ‚˜ 가상 μŠ€λ ˆλ“œ(Java) 같이 μ•„μ£Ό κ°€λ²Όμš΄ λ‹¨μœ„μ˜ λ™μ‹œμ„± λͺ¨λΈμ΄ μ£Όλ₯˜λ‘œ 자리 μž‘μ•˜λ‹€. ## πŸ”— 지식 μ—°κ²° (Graph) - Related: [[Distributed-Systems-Engineering]] , [[B-Tree]] - Foundation: [[Clean-Architecture-Implementation]]