| [ garbages ] in KIDS 글 쓴 이(By): blmarket (Neonsign) 날 짜 (Date): 2011년 07월 18일 (월) 오후 06시 56분 29초 제 목(Title): Re: 어이 없는 malloc 쓰레드 -_-; 근데 malloc에서 NULL이 리턴될만큼 뭔가 메모리를 헤비하게 쓸 것 같은 프로그램이라면 전용 메모리 관리자가 붙던가, 메모리를 임의의 길이로 할당하는 곳에서만 체크하면 됐지 임시 struct에 대해서 할당하는 곳에서도 그런 체크를 해야 할 지는 사실 좀 의문이긴 하네요. (사실 그런 경우 저라면 그냥 static으로 할당하고 그 포인터를 넘겨줘서 malloc 자체를 안써버리긴 합니다만) 사실 C에선 call stack 사이즈를 넘어가는 호출에 대한 처리도 미흡하지 않나요? malloc이나 이거나 문제의 수준은 비슷하다고 생각하는데요. 이를테면 malloc을 사용해야 할 곳에 대신 local 변수로 적당한 크기의 배열을 미리 잡아놓는답시고 100만개짜리 배열을 잡아버린다던가 하면 몇번만 그 함수를 재귀호출해주면 금방 뻗어버릴텐데 그런 경우의 exception handling을 malloc에서의 NULL체크만큼 깔끔하게 C에서 제공해주지는 않잖아요. 그렇다고 모든 프로그램이 Singal Handler를 일일이 지정해줘야 할 것도 아닌 것 같구... |