multi thread 2

[JAVA] JAVA Thread(μŠ€λ ˆλ“œ) μ‚¬μš©λ²• & 예제

Threadλž€? ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€ λ‚΄λΆ€μ—μ„œ λ…λ¦½μ μœΌλ‘œ μ‹€ν–‰λ˜λŠ” ν•˜λ‚˜μ˜ μž‘μ—… λ‹¨μœ„ μš΄μ˜μ²΄μ œμ— μ˜ν•΄ κ΄€λ¦¬λ˜λŠ” ν•˜λ‚˜μ˜ μž‘μ—…(Task) Thread = Task(μž‘μ—…) JVM에 μ˜ν•΄ ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€κ°€ λ°œμƒν•˜κ³  main() μ•ˆμ˜ 싀행문듀이 ν•˜λ‚˜μ˜ μŠ€λ ˆλ“œ main() μ΄μ™Έμ˜ 또 λ‹€λ₯Έ μŠ€λ ˆλ“œλ₯Ό λ§Œλ“€λ €λ©΄ Thread 클래슀λ₯Ό μƒμ†ν•˜κ±°λ‚˜ Runnable μΈν„°νŽ˜μ΄μŠ€ κ΅¬ν˜„ λ©€ν‹° μŠ€λ ˆλ“œ μž‘μ—… μ‹œ, 각 μŠ€λ ˆλ“œλΌλ¦¬ 정보λ₯Ό 주고받을 수 μžˆμ–΄ 처리 κ³Όμ •μ˜ 였λ₯˜λ₯Ό 쀄일 수 있음 ν”„λ‘œμ„ΈμŠ€λΌλ¦¬λŠ” 정보 κ΅ν™˜ λΆˆκ°€λŠ₯ λ©€ν‹° μŠ€λ ˆλ“œ(Multi Thread)λž€? μ—¬λŸ¬ μŠ€λ ˆλ“œλ₯Ό λ™μ‹œμ— μ‹€ν–‰μ‹œν‚€λŠ” μ‘μš©ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λŠ” 기법 μž₯점 λ©”λͺ¨λ¦¬ 곡유둜 μΈν•œ μ‹œμŠ€ν…œ μžμ› μ†Œλͺ¨ 쀄어듬 λ™μ‹œ μž‘μ—…μ΄ κ°€λŠ₯ 단점 μžμ›μ„ κ³΅μœ ν•˜κΈ°μ— 좩돌 λ°œμƒ κ°€λŠ₯μ„± 쑴재 둜직의 λ³΅μž‘λ„..

[OS] λ©€ν‹° μŠ€λ ˆλ“œ(Multi Thread) vs λ©€ν‹° ν”„λ‘œμ„ΈμŠ€(Multi Process)

λ©€ν‹° μŠ€λ ˆλ”© (Multi Threading) 보톡 μš°λ¦¬κ°€ μž‘μ„±ν•˜λŠ” μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄ ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€λ‘œ λ™μž‘ν•©λ‹ˆλ‹€. 또, ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€λŠ” 보톡 ν•˜λ‚˜μ˜ μŠ€λ ˆλ“œλ§Œ μ‚¬μš©ν•˜μ—¬ λ™μž‘ν•©λ‹ˆλ‹€. μ•„λž˜μ˜ 파이썬 μ½”λ“œλ₯Ό 톡해 μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² μŠ΅λ‹ˆλ‹€. HTML μ‚½μž… 미리보기할 수 μ—†λŠ” μ†ŒμŠ€ μ‹€ν–‰ κ²°κ³ΌλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. process_id : 25939 thread_id : 4539137536 μ΄λ ‡κ²Œ ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€μ—μ„œ ν•˜λ‚˜μ˜ μŠ€λ ˆλ“œλ§Œ μ‚¬μš©ν•˜λŠ” 것을 "μ‹±κΈ€ μŠ€λ ˆλ”©"이라고 ν•©λ‹ˆλ‹€. μš°λ¦¬κ°€ μž‘μ„±ν•˜λŠ” λŒ€λΆ€λΆ„μ˜ μ½”λ“œλ“€μ€ μ΄λ ‡κ²Œ μ‹±κΈ€ μŠ€λ ˆλ”©μž…λ‹ˆλ‹€. 반면, ν•˜λ‚˜μ˜ ν”„λ‘œμ„ΈμŠ€μ—μ„œ μ—¬λŸ¬ 개의 μŠ€λ ˆλ“œλ₯Ό μ‚¬μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. HTML μ‚½μž… 미리보기할 수 μ—†λŠ” μ†ŒμŠ€ μ‹€ν–‰ κ²°κ³ΌλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€. # 같은 ν”„λ‘œμ„ΈμŠ€ process_id : 27180..

Computer Science/OS 2022.08.14
λ°˜μ‘ν˜•