Q&A

  • 메모리 할당과 해제

요즘 allocMem이나 GetMem, FreeMeme같은 메모리를 할당하고 해제하는 것에 대해 공부하고 있는데, 써도 그만 안써도 그만인 것 같아요.

아차, 이 부분에 대해 알면 더 좋다는 것은 알겠지만, 요즘 윈도우는 운영체제가 메모리 관리를 해주는지, 더욱이 메모리 용량도 좋아져서... 통 이런 것에 신경쓸 일이 없어지네요....

그래서 그런데, 대형 프로젝트를 해보셨더거나, 아님 델파이를 오래하신 분들은 이 문제에 대해 어떻게 생각하세요?
2  COMMENTS
  • Profile
    김병곤 2003.07.08 22:55
    음... 메모리 할당과 해제의 문제는 대단히 중요한 문제입니다.
    이유없이 프로그램이 다운되는 경우 십중팔구는 어플내에서 메모리
    관리가 잘못 되서입니다.
    특히나 서버 프로그램의 경우에는 더욱더 메모리 관리가 중요합니다.
    툭하면 다운되는 서버 프로그램을 누가 사용하겠습니까.
    클라이언트 프로그램의 경우에는 대개 다양한 플랫폼을 지원해야하기
    때문에 윈도우2000 계열의 OS에서는 메모리 관리를 조금 엉성하게 하더라도
    문제가 조금 덜 발생하겠지만(발생은 합니다) 윈도우98 계열의 OS에서는
    감당이 안됩니다.
    결국 다양한 플랫폼을 지원하는 프로그램이라면 메모리 관리는 매우 중요한
    문제입니다.


  • Profile
    방재웅 2003.07.08 21:15

    델파이 뿐만 아니라 윈도우 프로그래밍에서는
    메모리 동적할 당이 필수입니다.

    물론 도스용 C나 파스칼도 마찬가지죠.

    왜냐하면 c나 파스칼등에서 기본적으로 변수는
    스택에 생성되기 때문이죠.

    스택의 특성상 용량이 극히 제한적이라서
    동적 메모리 할당이 필요한 겁니다.

    동적 메모리는 HEAP을 사용한다는 뜻이죠.

    이론적으로만 동적할당과 메모리에 대해서
    공부하는 거랑 실제 프로젝트랑 차원이 틀려요.

    큰 프로젝트에서는 일반변수 만큼이나 동적할 당도 많이 사용합니다.