CWN(CHANGE WITH NEWS) - 가비지 컬렉션, 개발 작업에 중요해...왜?

  • 구름많음태백4.3℃
  • 구름많음순천5.7℃
  • 구름조금산청0.2℃
  • 맑음울진7.7℃
  • 흐림제주15.4℃
  • 구름많음춘천-2.6℃
  • 구름많음영천-0.3℃
  • 흐림상주0.2℃
  • 흐림구미-1.0℃
  • 흐림전주12.4℃
  • 구름많음군산11.3℃
  • 흐림정읍11.6℃
  • 구름많음홍천-1.9℃
  • 구름많음성산15.4℃
  • 흐림안동-0.2℃
  • 흐림철원-2.1℃
  • 구름많음함양군-0.1℃
  • 흐림청송군-2.8℃
  • 흐림통영10.0℃
  • 흐림제천-0.3℃
  • 구름많음원주-0.4℃
  • 비부산10.8℃
  • 흐림문경0.1℃
  • 구름많음인제-2.8℃
  • 흐림인천5.9℃
  • 흐림북부산5.9℃
  • 흐림장수9.6℃
  • 맑음천안1.9℃
  • 흐림임실5.4℃
  • 구름많음보은2.0℃
  • 흐림강진군13.1℃
  • 구름조금포항3.4℃
  • 구름많음대전10.7℃
  • 구름많음양산시4.7℃
  • 구름많음고창11.7℃
  • 구름많음거창-1.1℃
  • 구름조금울산8.1℃
  • 흐림북춘천-3.2℃
  • 구름많음세종8.4℃
  • 흐림서울3.0℃
  • 구름많음경주시-1.1℃
  • 구름많음영광군11.3℃
  • 구름많음의령군-0.5℃
  • 구름많음진도군13.1℃
  • 구름많음목포12.2℃
  • 박무홍성9.5℃
  • 구름많음백령도3.4℃
  • 구름많음창원5.4℃
  • 흐림광양시7.4℃
  • 맑음대관령2.0℃
  • 흐림금산12.2℃
  • 맑음강릉6.1℃
  • 흐림영월-1.5℃
  • 구름많음고산15.4℃
  • 구름많음이천0.2℃
  • 구름많음양평0.3℃
  • 흐림울릉도10.2℃
  • 구름많음동두천1.2℃
  • 구름많음보령9.8℃
  • 흐림수원3.1℃
  • 구름많음진주2.0℃
  • 흐림봉화-1.4℃
  • 흐림거제8.2℃
  • 흐림정선군-1.5℃
  • 구름많음영덕6.1℃
  • 흐림고흥4.0℃
  • 구름조금속초3.8℃
  • 흐림추풍령-0.2℃
  • 구름많음대구1.3℃
  • 구름조금합천0.0℃
  • 구름많음의성-1.8℃
  • 비청주3.1℃
  • 흐림부안12.5℃
  • 맑음서산7.7℃
  • 맑음동해10.0℃
  • 흐림장흥6.0℃
  • 구름많음보성군1.6℃
  • 구름많음서청주0.8℃
  • 맑음북강릉4.7℃
  • 흐림여수6.5℃
  • 흐림충주1.3℃
  • 구름많음고창군11.5℃
  • 흐림서귀포16.0℃
  • 구름많음강화0.5℃
  • 흐림영주-0.4℃
  • 구름많음해남13.4℃
  • 구름많음밀양1.5℃
  • 구름많음흑산도12.6℃
  • 구름많음남원4.7℃
  • 구름많음부여3.4℃
  • 구름많음김해시8.3℃
  • 흐림광주10.3℃
  • 흐림남해8.7℃
  • 구름많음순창군9.2℃
  • 흐림완도14.1℃
  • 구름많음북창원5.7℃
  • 구름많음파주-0.4℃
  • 2026.01.15 (목)

가비지 컬렉션, 개발 작업에 중요해...왜?

임온유 / 기사승인 : 2022-05-02 18:39:37
  • -
  • +
  • 인쇄

인도 IT·빅데이터 전문 매체 애널리틱스 인사이트가 파이썬 등 인기 프로그래밍을 이용한 개발 작업에 가비지 컬렉션(Garbage Collection) 작업도 중요하다고 주장했다. 그 이유는 무엇일까?

먼저, 작업을 실행할 때는 텍스트나 숫자, 기본 데이터형 중 하나인 불린(Boolean) 등 프로그램 객체를 이용한다. 리스트나 해시, 클래스 등 더 복잡한 데이터 구조도 포함되었다.

프로그램 객체의 콘텐츠는 쉬운 접근성을 위해 메모리에 유지한다. 컴퓨터 코드의 변수는 단순히 다양한 컴퓨터 언어의 메모리 내 객체 위치를 나타낸다.

보통 프로그래머는 초기 프로그래밍 언어로 애플리케이션에서 모든 메모리 관리에 책임을 진다. 애플리케이션에 적용하는 메모리 관리 방식은 크게 수동 메모리 관리와 자동 메모리 관리가 있다.

프로그래머는 자동 메모리 관리를 활용할 수 있어, 수동으로 메모리를 관리할 필요가 없다. 자동 메모리 관리의 가장 보편적인 방법은 기준계수를 사용하는 것이다. 런타임이 기준계수를 사용하여 모든 개체의 언급을 기록한다. 개체가 기준계수에 아무런 연결이 없을 때, 프로그램코드는 이를 사용하지 못하고 제거된다.

자동 메모리 관리는 수준의 메모리 개체를 걱정하지 않을 때, 프로그램 설계가 더 쉽다는 장점이 있다. 더 나아가 값비싼 메모리 누수나 불안전한 매달림 포인터를 방지하는데 도움이 될 수 있다.

그러나 자동 메모리 관리에도 단점이 존재한다. 모든 연결 상태를 확인하기 위해 소프트웨어의 메모리 사용 및 처리량이 더 많아야 한다. 게다가 자동 메모리 관리를 적용한 다수 프로그래밍 언어는 모든 실행을 중단하는 동시에 가비지 컬렉터를 검색하고 수집 객체를 제거해야 한다.

그러나 보통 자동 메모리 관리가 개발자에게 선사하는 장점이 단점과 함께 안겨주는 불편함보다 더 크다. 실제로 파이썬과 자바, 고(Go) 등 다수 현대 프로그래밍 언어가 자동화 메모리 관리를 채택한다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue