- λ©μλμ λ¬Έμνμλ
ν΄λΉ λ©μλλ₯Ό μ¬λ¬ μ€λ λκ° λμμ νΈμΆν λμ λν λμ
μ΄ ν¬ν¨λμ΄ μμ΄μΌ ν¨ - ν΄λΌμ΄μΈνΈκ° λκΈ°νλ₯Ό ν΄μΌν μ§ λ§μ§ κ²°μ ν΄μΌ νκΈ° λλ¬Έ
- λΆλ³
- μμ
- λκΈ°νκ° νμ μμ
- 무쑰건μ μ€λ λ μμ
- μμ κ°λ₯νμ§λ§ λ΄λΆ λκΈ°νκ° μ΄λ£¨μ΄μ Έ μΈλΆ λκΈ°νκ° νμ μμ
- ex) Atomic class, Concurrent Collections
- μ‘°κ±΄λΆ μ€λ λ μμ
- μΌλΆ μν©μμλ ν΄λΌμ΄μΈνΈκ° λκΈ°νν΄μΌ ν¨
- μ΄λ€ μμλ‘ λ©μλλ₯Ό νΈμΆν λμλ μ΄λ€ λ½μ μ»μ΄μΌ νλμ§ λͺ μ
- ex) Collections.synchronized Collections
- μ€λ λ μμ νμ§ μμ
- μμ κ°λ₯νλ©°, ν΄λΌμ΄μΈνΈκ° λκΈ°νν΄μΌ ν¨
- ex) Collections (ArrayList, HashMap λ±)
- μ€λ λ μ λμ
- ν΄λΌμ΄μΈνΈκ° λκΈ°νν΄λ μ€λ λ μμ νμ§ μμ μ μμ
- μ΄λ° ν΄λμ€λ λ§λ€λ©΄ μ λ¨
- νμ§λ§ νλ‘κ·Έλλ¨Έμ μ€μλ‘ νμν μ μμΌλ©°, λ³΄ν΅ deprecatedλ¨
- @Immutable = 1. λΆλ³
- @ThreadSafe = 2. 무쑰건μ μ€λ λ μμ
- @NotThreadSafe = 4. μ€λ λ μμ νμ§ μμ
- λ³΄ν΅ λ¬Έμνν λμλ 1, 2, 4λ²μ λ§μ΄ μ¬μ©
- λ½ κ°μ²΄κ° κ΅μ²΄λλ©΄ μ¬κ°ν κ²°κ³Ό μ΄λ κ°λ₯
- λ½ νλλ νμ λΆλ³μ΄μ΄μΌ κ΅μ²΄λ₯Ό μλ°©ν μ μμ
- λ½ κ°μ²΄κ° 곡κ°λλ©΄ ν΄λΌμ΄μΈνΈ λλ ν΄λμ€λ₯Ό μμνλ νμ ν΄λμ€μμ λ½μ μ€λ¨μ©νμ¬ ν΄λμ€μ λμμ λ°©ν΄ν μ μμ