📝 24.03.12
가비지 컬렉터에 대해 설명해주세요
가비지 컬렉터는 자동 메모리 관리 시스템입니다. 힙 메모리 영역에서 더 이상 사용되지 않는 메모리를 식별하고 자동으로 회수하여 프로그램 기능을 향상합니다.
꼬리 질문 1
가비지 컬렉터를 회피하기 위한 전략은 무엇이 있나요?
답변 :
참조 타입 인스턴스의 사용을 줄이는 전략이 있습니다. 가비지 컬렉터는 힙 메모리 영역을 관리하므로, 힙 메모리 영역을 사용하는 참조 타입 인스턴스 사용을 줄이고 스택 메모리 영역을 사용하는 값 타입 인스턴스를 사용하는 것이 가장 대표적인 회피 전략입니다.
꼬리 질문 2
가비지 컬렉션이란 무엇인지 설명해주세요.
답변 :
가비지 컬렉터가 더 이상 사용되지 않는 메모리를 자동으로 식별하고 회수하는 프로세스 자체를 의미합니다.
수많은 오류를 고쳐나가고 있다.
대표적인 오류가 isGrounded
를 임시로 True로 해둔 것을 잊고 있었는데, 이로 인해 땅에 닿지도 않았는데 계속 점프하는 등 여러 오류가 발생했다. 그래서 RayCast
로 isGrounded
를 체크할 수 있도록 수정하였다.
private void Update()
{
RaycastHit2D hit = Physics2D.Raycast(transform.position, Vector3.down, 0.1f, LayerMask.GetMask("Ground"));
Debug.DrawRay(transform.position, Vector3.down, Color.green);
if(hit.collider != null)
{
isGrounded = true;
} else
{
isGrounded = false;
}
}
이외의 여러 오류들도 노션에 자잘히 작성하고 있는데 이를 다 적을 엄두가 안난다. 일단 오늘은 이정도가 주요하게 수정한 것이다. 더 작업에 속도를 내야할 것 같다.