[JAVA] Thread
in Tech-Stack on JAVA
Contents
Threadλ?
νλμ νλ‘μΈμ€ λ΄λΆμμ λ 립μ μΌλ‘ μ€νλλ νλμ μμ λ¨μλ₯Ό λ§νλ€.
μΈλΆμ μΌλ‘λ OSμ μν΄ κ΄λ¦¬λλ νλμ μμ νΉμ νμ€ν¬λ₯Ό μλ―Ένλ€.
Thread classλ₯Ό μμλ°κ±°λ Runnable interfaceλ₯Ό ꡬνν΄μ μ€λ λ ν΄λμ€λ₯Ό μ μν μ μλ€.
Runnable interfaceλ₯Ό ꡬνν κ²½μ°μ Threadλ₯Ό μμλ°μ§ μμκΈ° λλ¬Έμ thread κ°μ²΄λ₯Ό μμ±ν λ λ§€κ°λ³μλ‘ λ£μ΄μ£Όλ©΄ λλ€.
μ€λ λμ νμ€ν¬, μμ μ λ°κΏμ μ¬μ©ν΄λ 무κ΄νλ€.
CPUκ° μ±κΈ μ½μ΄μΌ λμ λμΌ μ½μ΄μΌ λ λ©ν° μ€λ λκ° λ€λ₯΄κ² μ€νλλ€.
μ±κΈ μ½μ΄λΌλ©΄ μ¬λ¬ μ€λ λκ° νλμ© λμκ°λ©΄μ μ€νλκ³ λμΌ μ½μ΄λΌλ©΄ μ¬λ¬ μ€λ λκ° λ κ°μ© λμκ°λ©΄μ μ€νλλ€.
λΆλͺ¨ μ€λ λ, μμ μ€λ λ
μ€ν method
@Override run()- μ±κΈ μ€λ λλ‘ μ¬μ©ν λ νΈμΆνλ©° threadκ° μμ±λμ§ μκ³ run() λ©μλλ§ μ€νλλ€.
@Override start()- μλ‘μ΄ μ€λ λλ₯Ό μμ±νλ©° ν΄λΉ μ€λ λκ° μ€νλλ©΄ run() λ©μλκ° μ€νλλ€.
- λ©ν° μ€λ λλ‘ λμνλ€.
Demon thread
λΆλͺ¨ μ€λ λκ° μ£½μμ λ μμ μ€λ λλ₯Ό μ΄λ»κ² ν μ§ μ ν΄μΌ νλ€.
isDemon()μ ν΅ν΄ λΆλͺ¨ μ€λ λκ° μ΄μμλμ§ νμΈν μ μλ€.
setDemon() λ©μλλ₯Ό ν΅ν΄ λΆλͺ¨κ° μ’
λ£λλ©΄ μμλ μ’
λ£λκ² μ€μ ν μ μλ€.
thread priority(μ€λ λ μ°μ μμ)
.getPriority()λ₯Ό ν΅ν΄ ν΄λΉ μ€λ λμ μ°μ μμλ₯Ό νμΈν μ μλ€.
μ°μ μμμ κΈ°λ³Έ κ°μ 5μ΄λ©° 1 ~ 10μΌλ‘ κ°μ΄ μ‘΄μ¬νλ€.
μ°μ μμκ° ν΄ μλ‘ μμκ° λμΌλ©° 10μ΄ μ μΌ λ¨Όμ μ€νλλ€.
