Skip to content

Latest commit

Β 

History

History
31 lines (22 loc) Β· 1.89 KB

Concurrency_Programming.md

File metadata and controls

31 lines (22 loc) Β· 1.89 KB

λ™μ‹œμ„± ν”„λ‘œκ·Έλž˜λ°

기쑴의 μˆœμ„œλŒ€λ‘œ λͺ…령듀이 μ‹€ν–‰λ˜λŠ” κ΅¬μ‘°μ—μ„œ λ²—μ–΄λ‚˜ λͺ…령듀이 λΆˆκ·œμΉ™ν•œ μˆœμ„œλŒ€λ‘œ 싀행될 수 있게 ν•΄μ£ΌλŠ” ν”„λ‘œκ·Έλž˜λ° κΈ°λ²•μž…λ‹ˆλ‹€. -λ©€ν‹°μŠ€λ ˆλ”©μ€ λ™μ‹œμ„± ν”„λ‘œκ·Έλž˜λ°μ˜ ν•œ λ°©λ²•μ΄μ§€λ§Œ, λ™μ‹œμ„± ν”„λ‘œκ·Έλž˜λ°μ΄ κΌ­ -λ³‘λ ¬μ²˜λ¦¬ 및 λ©€ν‹°μŠ€λ ˆλ”©μ„ μ˜λ―Έν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€.

λ©€ν‹° μŠ€λ ˆλ”©

ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€μ—μ„œ μ—¬λŸ¬ 개의 μŠ€λ ˆλ“œκ°€ λ™μ‹œμ— μ‹€ν–‰λ˜λŠ” 것을 μ˜λ―Έν•©λ‹ˆλ‹€. 이것은 μž‘μ—…μ„ λ³‘λ ¬λ‘œ μ²˜λ¦¬ν•˜κ³  μ‹œμŠ€ν…œμ˜ μ„±λŠ₯을 ν–₯μƒμ‹œν‚€λŠ” 데 도움이 λ©λ‹ˆλ‹€.

병렬 처리

μ—¬λŸ¬ 개의 ν”„λ‘œμ„ΈμŠ€κ°€ λ™μ‹œμ— μ‹€ν–‰λ˜λŠ” 것을 μ˜λ―Έν•©λ‹ˆλ‹€. 이것은 닀쀑 μ½”μ–΄ ν”„λ‘œμ„Έμ„œμ™€ 같은 ν•˜λ“œμ›¨μ–΄ λ¦¬μ†ŒμŠ€λ₯Ό ν™œμš©ν•˜μ—¬ μž‘μ—…μ„ 효율적으둜 μ²˜λ¦¬ν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€.

Sync/Async

Sync Programming - 동기 ν”„λ‘œκ·Έλž˜λ°

ν”„λ‘œκ·Έλž¨μ˜ 흐름과 이벀트의 λ°œμƒ 및 처리λ₯Ό μ’…μ†μ μœΌλ‘œ μˆ˜ν–‰ν•˜λŠ” 방법

image

Async Programming - 비동기 ν”„λ‘œκ·Έλž˜λ°

ν”„λ‘œκ·Έλž¨μ˜ 흐름과 이벀트의 λ°œμƒ 및 처리λ₯Ό λ…λ¦½μ μœΌλ‘œ μˆ˜ν–‰ν•˜λŠ” 방법

image


비동기 != λ™μ‹œμ„± != 병렬성

  • λ™μ‹œμ„± ν”„λ‘œκ·Έλž˜λ° (Concurrency)
    • μ—¬λŸ¬ μž‘μ—…μ΄ 논리적인 κ΄€μ μ—μ„œ λ™μ‹œμ— μˆ˜ν–‰λ˜λŠ” 것 처럼 보이도둝 ν•˜λŠ”κ²ƒ
    • μ‹±κΈ€ μ½”μ–΄ λ˜λŠ” λ©€ν‹° μŠ€λ ˆλ”©μ„ ν•˜κΈ° μœ„ν•΄ 적용
  • 비동기 ν”„λ‘œκ·Έλž˜λ° (Async)
    • ν”„λ‘œκ·Έλž¨μ˜ 흐름과 이벀트의 λ°œμƒ 및 처리λ₯Ό λ…λ¦½μ μœΌλ‘œ μˆ˜ν–‰ν•˜λŠ” 방법
  • 병렬성 ν”„λ‘œκ·Έλž˜λ° (Parallel)
    • μ—¬λŸ¬ μž‘μ—…μ΄ 물리적인 κ΄€μ μ—μ„œ λ™μ‹œμ— μˆ˜ν–‰λ˜λŠ” 것