νλ‘μΈμ€
μ€λͺ
μ€νμ€μΈ νλ‘κ·Έλ¨
β» λ©ν° νλ‘μΈμ€
λ€μμ λ°μ΄ν° μ μ₯ μμμ κ°μ§ (λ€μμ Tλ©λͺ¨λ¦¬λ₯Ό κ°μ§λ ꡬ쑰)
νλ‘μΈμ€ λΌλ¦¬ μλ‘ μ°Έμ‘° λΆκ°λ₯ (κ³΅κ° μμ μμ²΄κ° λΆλ¦¬)
μ€λ λ
μ€λͺ
νλμ νλ‘κ·Έλ¨ λ΄ μ¬λ¬κ°μ μ€ν νλ¦
β» λ©ν° μ€λ λ
Tλ©λͺ¨λ¦¬ λͺ¨λΈ(μ€νν±, μ€ν, ν)μ μ€ν μμ(λ©μλ μμ)μ μ€λ λ κ°―μ λ§νΌ λΆν ν΄μ μ¬μ©νλ κ².
μλ‘ λ€λ₯Έ μ€λ λμ μ€ν μμμ μ κ·Ό λͺ»νμ§λ§ μ€νν±μμ, ν μμμ 곡μ ν΄μ μ¬μ©νλ ꡬ쑰.
λ©ν° νλ‘μΈμ€ λλΉ λ©λͺ¨λ¦¬λ₯Ό μ κ² μ¬μ©νλ ꡬ쑰.!!
μ μ λ³μ μ¬μ©μ λ¬Έμ κ° λ κ°λ₯μ± μ‘΄μ¬ ((λ³μμ°Έμ‘°)λ½μ κ±°λ λ°©λ²μ΄ μλ€κ³ ν¨ (?))
μ€λ λν
μ€λ λ νμ μμ
μ²λ¦¬μ μ¬μ©λλ μ€λ λλ₯Ό μ νλ κ°μλ§νΌ μ ν΄λκ³ μμ
ν (Queue)μ λ€μ΄μ€λ μμ
λ€μ νλμ© μ€λ λκ° λ§‘μ μ²λ¦¬.
μ ν΄μ§ νμ λ€μ΄μ¨ μμ
μ νλμ© μ²λ¦¬νκΈ°λλ¬Έμ, μμ²μ΄ λμ΄λλ μ 체 ν κ°―μλ λμ΄λμ§ μκΈ° λλ¬Έμ μ±λ₯μ΄ κΈκ²©ν μ νλμ§ μμ.
ExecutorService
ExecutorServiceλ μ€λ λμμ λΉλκΈ° μ μΌλ‘ μμ
μ μ€νν μμλ μΈν°νμ΄μ€.
java.util.concurrent ν¨ν€μ§μ μκ³ , μ€λ λ νμ μ μ§ κ΄λ¦¬νκ³ μμ
μ ν λΉνλ λ° λμμ΄λλ€.
λν μμ
μκ° μ¬μ© κ°λ₯ν μ€λ λλ³΄λ€ λ§μ κ²½μ° μ¬μ© κ°λ₯ν μ€λ λκ°μμ λκΉμ§ μμ
μ λκΈ°μ΄μ λ£λ κΈ°λ₯μ μ 곡νλ€.
Fork Join Framework
λ³λ ¬ν ν μ μλ μμ μ μ¬κ·μ μΌλ‘ μμ μμ μΌλ‘ λΆν ν μλΈνμ€ν¬μ κ°κ°μ κ²°κ³Όλ₯Ό ν©μ³μ 체 κ²°κ³Όλ₯Ό λ§λ¬
Fork: λ°μ΄ν° λ°λ³΅μ μΌλ‘ λΆλ¦¬
Join: μλΈ κ²°κ³Όλ₯Ό κ²°ν©νμ¬ μ΅μ’ κ²°κ³Όλ₯Ό λ§λ¬
νλ‘μΈμ€μ μ€λ λμ μ°¨μ΄
μ€λͺ
νλ‘μΈμ€λ λ©λͺ¨λ¦¬ μμμ 곡μ νλ©°, μ€λ λλ μ€νμμμ μμ±ν¨
μ°Έκ³
https://wikibook.co.kr/java-oop-for-spring/ (μ±
: μ€νλ§ μ
λ¬Έμ μν μλ° κ°μ²΄μ§ν₯μ μ리μ μ΄ν΄)
https://3dmpengines.tistory.com/2003
https://www.javatpoint.com/java-executorservice
https://cheershennah.tistory.com/170
https://www.geeksforgeeks.org/thread-pools-java/
https://black9p.github.io/2018/01/20/λ³λ ¬-λ°μ΄ν°-μ²λ¦¬μ-μ±λ₯/
'κ°λ° > java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
WebClient μ¬μ©μ μ£Όμν μ ! (0) | 2023.08.13 |
---|---|
[RxJava] 리μ‘ν°λΈ νλ‘κ·Έλλ° (0) | 2022.05.02 |
java - call by value, call by reference (0) | 2021.07.11 |
μλ°-λλ€(lambda) (0) | 2021.05.28 |
jdbc, mybatis, jpa (0) | 2018.12.31 |