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

  • 흐림원주-0.6℃
  • 흐림경주시-1.4℃
  • 구름많음흑산도12.7℃
  • 흐림광주6.5℃
  • 구름많음태백4.4℃
  • 구름많음고흥3.8℃
  • 흐림금산4.6℃
  • 구름많음울산5.4℃
  • 구름많음영덕2.0℃
  • 흐림대구0.0℃
  • 흐림홍천-2.3℃
  • 흐림파주-1.7℃
  • 흐림의성-2.1℃
  • 흐림안동-0.2℃
  • 구름많음고창군10.5℃
  • 흐림합천-1.1℃
  • 흐림봉화-2.0℃
  • 흐림밀양2.2℃
  • 구름많음성산14.7℃
  • 흐림강화-0.3℃
  • 구름많음남원3.2℃
  • 구름많음북창원5.4℃
  • 흐림영월-2.0℃
  • 구름많음구미-1.3℃
  • 흐림함양군-0.5℃
  • 흐림양평-0.1℃
  • 흐림수원3.1℃
  • 흐림전주8.4℃
  • 구름많음임실6.4℃
  • 구름많음영광군9.9℃
  • 흐림서산8.0℃
  • 흐림서귀포15.2℃
  • 구름많음강릉2.9℃
  • 구름많음순천0.9℃
  • 구름많음해남13.2℃
  • 구름조금보성군1.9℃
  • 흐림철원-3.1℃
  • 맑음고산15.0℃
  • 비북강릉1.6℃
  • 구름많음광양시4.6℃
  • 구름많음양산시4.6℃
  • 구름많음청주2.4℃
  • 흐림충주0.6℃
  • 구름많음진주1.5℃
  • 흐림청송군-3.5℃
  • 흐림백령도2.3℃
  • 흐림군산7.8℃
  • 흐림보령10.6℃
  • 구름많음북부산4.2℃
  • 구름많음창원5.9℃
  • 흐림대관령0.2℃
  • 구름조금울진5.4℃
  • 흐림서울1.9℃
  • 흐림부산11.4℃
  • 구름많음순창군3.1℃
  • 흐림서청주0.4℃
  • 구름조금완도5.3℃
  • 구름조금장흥2.2℃
  • 흐림거창-1.2℃
  • 구름많음여수5.5℃
  • 구름조금포항2.4℃
  • 구름많음김해시5.0℃
  • 흐림부여2.2℃
  • 구름많음진도군13.8℃
  • 흐림울릉도7.3℃
  • 흐림춘천-3.2℃
  • 흐림추풍령0.8℃
  • 흐림상주1.0℃
  • 흐림천안2.1℃
  • 구름많음목포12.4℃
  • 구름많음남해3.9℃
  • 흐림세종1.5℃
  • 구름많음동해2.5℃
  • 흐림영주0.0℃
  • 흐림이천0.2℃
  • 흐림보은1.3℃
  • 흐림문경0.3℃
  • 흐림부안10.8℃
  • 흐림산청-0.8℃
  • 구름많음속초2.3℃
  • 맑음영천-1.1℃
  • 비 또는 눈북춘천-3.9℃
  • 구름많음통영5.6℃
  • 구름조금강진군2.2℃
  • 구름많음정읍10.9℃
  • 흐림의령군-0.2℃
  • 흐림제천-0.9℃
  • 구름많음거제5.5℃
  • 구름많음인제-4.1℃
  • 흐림홍성10.5℃
  • 흐림장수8.7℃
  • 흐림인천3.0℃
  • 흐림정선군-3.2℃
  • 흐림대전2.7℃
  • 맑음제주11.1℃
  • 구름많음고창10.1℃
  • 흐림동두천-1.0℃
  • 2026.01.15 (목)

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

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

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

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

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

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

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

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

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

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

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

최신기사

뉴스댓글 >

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

댓글 0

Today

Hot Issue