Работя върху софтуерна библиотека, която постоянно може да следи размерите на паметта на програмите, написани в C / C ++.
Това, което искам да направя, е както следва.
void check_memory(){
heap_size = get_process_heap_size(.....);
if(heap_size>=upper_bound){
//do something to reduce the heap size
heap_size = get_process_heap_size(.....);
}
}
Има ли някакво системно обаждане в C / C ++, което е еквивалентно на get_process_heap_size () в кода по-горе?
Отговори:
0 за отговор № 1Не знам дали има директно системно обажданекойто ви дава подробности за паметта, но ако сте на Linux, можете да прочетете и анализирате протокола / proc / (pid на вашия процес) / статус, за да получите необходимите данни за паметта