2012-03-19 6 views
1

와 기능 개재 정리, 나는 코드의 고전 조각을 사용합니다.는 malloc에 ​​래퍼로 ​​dlsym을

==32691== 32 bytes in 1 blocks are still reachable in loss record 1 of 1 
==32691== at 0x4C279FC: calloc (vg_replace_malloc.c:467) 
==32691== by 0x528559F: _dlerror_run (dlerror.c:142) 
==32691== by 0x5285099: dlsym (dlsym.c:71) 
==32691== by 0x4060BC: malloc (memory.c:222) 

어떻게 이러한 리소스를 해제 할 수 있습니까? 감사

+1

어쩌면 내가 여기에 뭔가 빠졌어, 그리고 심지어이 버퍼를 공개하는 것이 가능한지 모르겠지만, 난 그냥 무시할 것입니다. dlsym 버퍼는 프로그램이 종료 될 때 해제되고 프로그램이 실행되는 동안 필요합니다. –

+0

그것은 나를 귀찮게하지 않는다, 나는 단지 호기심이다. – ziu

+0

확인. dlclose에게 전화 해 주시겠습니까? 이 버퍼가 아직 남아 있습니까? –

답변

0

1 블록이 블록은 잘 아직도

도달 할 수 있습니다. 당신은 그들에 대해 걱정할 필요가 없습니다, 그들은 이 아니며 누수입니다. 여기를 볼 일은 없습니다.

당신이 신경 써야 할 "확실한 손실"입니다.