내가 이해하는 바와 같이, .NET GC 응용 프로그램에서 서버 GC 모드가 활성화되면 각 프로세서에서 예약 된 스레드가 메모리를 할당하는 프로세서 당 논리 힙을 할당합니다.작업 계속이 다른 프로세서 (GC 논리 힙)에서 예약되면 어떻게됩니까?
복수 대기로 Task
에 할당 된 메모리는 어떻게됩니까? ThreadPool의 모든 스레드에서 잠재적으로 실행될 수 있으므로 논리 힙간에 이동할 수 있습니다.
이전 논리 힙에 할당 된 메모리가 현재 실행중인 논리 힙에 복사됩니까? 동일한 논리 힙/코어에서 Task
연속을 실행하지 않으면 어떤 비용이 있습니까?
잘못된 정신 모델입니다. 객체는 이미 serverGC가없는 다른 힙 세그먼트에 있습니다. 즉, gen # 0에서 # 2 및 LOH. serverGC의 세그먼트가 더 이상 끊기지 않습니다. 더 생산적인 것은 하나 이상의 프로세서에서 쓰레기를 수집한다고 생각하는 것입니다. –