κ°λΉμ§ 컬λ μ μΌλ‘ λ©λͺ¨λ¦¬λ₯Ό κ΄λ¦¬νλ λ°©λ²
κ°λΉμ§ 컬λ μ
(Garbage Collection)
μ λ μ΄μ μ¬μ©λμ§ μλ κ°μ²΄(μ°Έμ‘°λμ§ μλ λ©λͺ¨λ¦¬)λ₯Ό μλμΌλ‘ κ΄λ¦¬νκ³ μ κ±°νλ λ©λͺ¨λ¦¬ κ΄λ¦¬ μμ€ν
μ
λλ€.
λ©λͺ¨λ¦¬λ μ»΄ν¨ν°μμ λ°μ΄ν°λ₯Ό μ μ₯νλ 곡κ°μ λλ€. νλ‘κ·Έλ¨μ΄ μ€νλλ λμ νμν λ°μ΄ν°λ λ©λͺ¨λ¦¬μ μ μ₯λλ©°, νλ‘κ·Έλ¨μ΄ μ’ λ£λλ©΄ λ©λͺ¨λ¦¬μ μ μ₯λ λ°μ΄ν°λ μμ λ©λλ€.
κ°λΉμ§ 컬λ μ
μ λ©λͺ¨λ¦¬ λμ(Leak)
λ₯Ό λ°©μ§νκ³ νλ‘κ·Έλ¨μ λ©λͺ¨λ¦¬ μ¬μ© ν¨μ¨μ λμ΄λ λ° μ€μν μν μ ν©λλ€.
ν΄λμ€μμ λ³μλ₯Ό μ μ₯νλ κ²½μ°
ν΄λμ€κ° λ³μλ₯Ό μ μ₯νλ©΄ ν΄λΉ λ³μκ° μ°Έμ‘°νλ κ°μ²΄λ λ©λͺ¨λ¦¬μ κ³μ λ¨μ μκ² λ©λλ€.
μ΄ κ°μ²΄λ ν΄λΉ λ³μκ° λ μ΄μ νμ μμ΄ κ°λΉμ§ 컬λ μ λμμ΄ λ λκΉμ§ λ©λͺ¨λ¦¬μμ μ κ±°λμ§ μμ΅λλ€.
class MyClass: def __init__(self, data): self.data = data # κ°μ²΄ μμ± λ° μ°Έμ‘° obj = MyClass([1, 2, 3])
μ΄ μμ μμ obj
κ°μ²΄λ MyClass
μ μΈμ€ν΄μ€λ₯Ό μ°Έμ‘°νλ©°,[1, 2, 3]
리μ€νΈλ₯Ό data
λ³μμ μ μ₯ν©λλ€.
obj
κ° μ‘΄μ¬νλ λμ, κ°λΉμ§ 컬λ μ
μ μ΄ κ°μ²΄λ₯Ό νμνμ§ μμ΅λλ€.
λ³μλ₯Ό μ μ₯νμ§ μλ ν΄λμ€
ν΄λμ€κ° λ³μλ₯Ό μ μ₯νμ§ μμΌλ©΄, κ°μ²΄μ λν μ°Έμ‘°κ° μμ΄μ§ λ κ°λΉμ§ 컬λ μ μ΄ ν΄λΉ μΈμ€ν΄μ€λ₯Ό μλμΌλ‘ λ©λͺ¨λ¦¬μμ νμν©λλ€.
class MyClass: pass # κ°μ²΄ μμ± λ° μ°Έμ‘° obj = MyClass() # μ°Έμ‘° μ κ±° del obj # κ°λΉμ§ 컬λ μ λμ
μ΄ μμ μμ obj
λ MyClass
μ μΈμ€ν΄μ€λ₯Ό μ°Έμ‘°ν©λλ€.
del obj
λ₯Ό νΈμΆνμ¬ μ°Έμ‘°λ₯Ό μ κ±°νλ©΄, κ°λΉμ§ 컬λ μ
μ΄ MyClass
μΈμ€ν΄μ€λ₯Ό νμν μ μμ΅λλ€.
λΉμΉΈμ λ€μ΄κ° κ°μ₯ μ μ ν λ¨μ΄λ 무μμΌκΉμ?
Guidelines
AI Tutor
Publish
Design
Upload
Notes
Favorites
Help
Code Editor
Execution Result