«garbage-collection» 태그된 질문

가비지 콜렉션 (GC)은 가비지 또는 프로그램에서 더 이상 사용하지 않는 오브젝트가 차지하는 메모리를 회수하려고 시도하는 자동 메모리 관리의 한 형태입니다.

2
C #에서 이벤트 처리기를 명시 적으로 제거해야합니까?
몇 가지 이벤트를 제공하는 수업이 있습니다. 해당 클래스는 전역으로 선언되지만 해당 전역 선언에 인스턴스화되지는 않습니다. 필요한 메서드에서 필요에 따라 인스턴스화됩니다. 해당 클래스가 메서드에 필요할 때마다 인스턴스화되고 이벤트 핸들러가 등록됩니다. 메서드가 범위를 벗어나기 전에 이벤트 처리기를 명시 적으로 제거해야합니까? 메서드가 범위를 벗어나면 클래스의 인스턴스도 마찬가지입니다. 범위를 벗어난 인스턴스에 등록 된 이벤트 …

15
C #에서 가비지 수집을 강제하는 모범 사례
내 경험상 대부분의 사람들은 가비지 수집을 강제하는 것이 현명하지 않다고 말할 것 같지만, 0 세대에서 항상 수집되지는 않지만 메모리가 문제가되는 큰 개체로 작업하는 경우에는 수집을 강제해도 괜찮습니까? 그렇게하기위한 모범 사례가 있습니까?

8
Haskell에 가비지 수집기가 필요합니까?
Haskell 구현이 GC를 사용하는 이유가 궁금합니다. 순수한 언어로 GC가 필요한 경우는 생각할 수 없습니다. 복사를 줄이기위한 최적화일까요, 아니면 실제로 필요한가요? GC가 없으면 누출되는 예제 코드를 찾고 있습니다.

16
System.gc ()는 언제 뭔가를합니까?
Java에서 가비지 수집이 자동화된다는 것을 알고 있습니다. 그러나 System.gc()코드를 호출 하면 JVM이 해당 시점에서 가비지 수집을 수행할지 여부를 결정할 수 있음을 이해 했습니다. 이것이 정확히 어떻게 작동합니까? JVM은 정확히 어떤 기준 / 매개 변수에서 GC를 수행할지 여부를 결정 System.gc()합니까? 이것을 코드에 넣는 것이 좋은 경우에 대한 예가 있습니까?

6
Java 객체를 null로 설정하면 더 이상 작업이 수행됩니까?
나는 오래된 책을 찾아 보던 중 Peter Hagger의 "Practical Java"사본을 발견했습니다. 성능 섹션 null에는 더 이상 필요하지 않을 때 개체 참조를 설정하는 권장 사항이 있습니다. Java에서 null성능 또는 가비지 콜렉션 효율성 을 향상시키기 위해 오브젝트 참조를 설정 합니까? 그렇다면 어떤 경우에 문제가됩니까? 컨테이너 클래스? 개체 구성? 익명의 내부 클래스? 나는 …

5
Go는 어떤 종류의 가비지 컬렉션을 사용합니까?
Go는 가비지 수집 언어입니다. http://golang.org/doc/go_faq.html#garbage_collection 여기서는 그것이 표시 및 청소 가비지 수집기라고 말하고 있지만 세부 사항을 조사하지 않고 교체 작업이 진행 중입니다. 여전히 마크 앤 스윕인가요? 보수적입니까, 정확합니까? 세대 적입니까?

11
용어 및 개념의 의미 이해-RAII (Resource Acquisition is Initialization)
C ++ 개발자가 RAII가 무엇인지, 왜 중요한지, 다른 언어와 관련이 있는지 여부에 대해 설명해 주시겠습니까? 나는 이렇게 조금 알고있다. 나는 그것이 "자원 획득이 초기화이다"를 의미한다고 믿는다. 그러나 그 이름은 RAII가 무엇인지에 대한 나의 (아마도 부정확 한) 이해와 동 떨어지지 않습니다. RAII가 스택에서 객체를 초기화하는 방법이라는 인상을 받았기 때문에 해당 변수가 …

13
수백만 개의 작은 임시 개체를 만드는 모범 사례
수백만 개의 작은 개체를 만들고 릴리스하기위한 "모범 사례"는 무엇입니까? Java로 체스 프로그램을 작성하고 있으며 검색 알고리즘은 가능한 각 이동에 대해 단일 "Move"개체를 생성하며 명목 검색은 초당 백만 개 이상의 이동 개체를 쉽게 생성 할 수 있습니다. JVM GC는 내 개발 시스템의로드를 처리 할 수 ​​있었지만 다음과 같은 대체 접근 방식을 …

11
Android의 가비지 수집기
일부 상황에서 가비지 수집기 호출을 제안하는 많은 Android 답변을 보았습니다. 메모리를 많이 사용하는 작업을 수행하기 전에 Android에서 가비지 수집기를 요청하는 것이 좋은 방법인가요? 그렇지 않은 경우 OutOfMemory오류가 발생한 경우에만 호출해야 합니까? 가비지 컬렉터를 사용하기 전에 사용해야 할 다른 것이 있습니까?

9
셸에서 가비지 수집을 어떻게 강제합니까?
그래서 원격 상자에 jmap이있는 힙을보고 있으며 가비지 수집을 강제하고 싶습니다. jvisualvm 또는 jconsole 및 친구에 들어 가지 않고 어떻게 할 수 있습니까? 나는 당신이 가비지 콜렉션을 강요해서는 안된다는 것을 안다. 힙이 왜 커지거나 커지는 지 알아 내야한다. 또한 System.GC ()가 실제로 가비지 수집을 강제하지 않는다는 것을 알고 있습니다. 단지 GC에 …

5
왜 Large Object Heap이고 우리가 관심을 갖는 이유는 무엇입니까?
세대 및 대형 개체 힙에 대해 읽었습니다. 하지만 여전히 큰 개체 힙을 갖는 것의 중요성 (또는 이점)이 무엇인지 이해하지 못합니다. CLR이 대규모 개체를 저장하기 위해 2 세대 (Gen0 및 Gen1에 대한 임계 값이 작은 경우 큰 개체를 처리 할 수 ​​있다는 점을 고려)에 의존했다면 성능 또는 메모리 측면에서 무엇이 잘못되었을 …


20
GC.Collect ()를 사용하면 무엇이 그렇게 잘못 되었습니까?
이 기능을 사용하는 것의 심각한 의미를 이해하고 있지만 (적어도 그게 제 생각입니다) 존경하는 프로그래머가 사용하지 않는 것 중 하나가되는 이유를 알지 못합니다. 그것은 무엇을위한 것입니다. 사용자가 수행하는 작업에 따라 메모리 사용량이 크게 달라지는 애플리케이션을 개발하고 있다고 가정 해 보겠습니다. 응용 프로그램 수명주기는 편집과 실시간 처리의 두 가지 주요 단계로 나눌 …

3
가비지 수집기는 여기서 무한 루프를 어떻게 피합니까?
다음 C # 프로그램을 살펴보면 루프없이 루프를 만들기위한 답변으로 codegolf에 제출했습니다. class P{ static int x=0; ~P(){ System.Console.WriteLine(++x); new P(); } static void Main(){ new P(); } } 이 프로그램은 내 검사에서 무한 루프처럼 보이지만 수천 번 반복 실행 된 다음 프로그램이 오류없이 성공적으로 종료됩니다 (오류가 발생하지 않음). P최종적으로 종료자가 …

3
Java 가비지 콜렉션 로그 메시지
가비지 수집 정보를 로그에 덤프하도록 Java를 구성했습니다 ( verbose GC ). 로그의 가비지 수집 항목이 무엇을 의미하는지 잘 모르겠습니다. 이러한 항목의 샘플은 아래에 게시되어 있습니다. 나는 Google에서 주변을 검색했지만 확실한 설명을 찾지 못했습니다. 나는 몇 가지 합리적인 추측을 가지고 있지만 항목의 숫자가 의미하는 바에 대한 엄격한 정의를 제공하고 신뢰할 수있는 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.