Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> C /C + + Προγραμματισμός

Πώς να ανιχνεύσει μια διαρροή μνήμης στα Windows με C + +

διαρροές μνήμης συμβεί όταν ένα συγκεκριμένο πρόγραμμα χορηγεί συνεχώς μνήμης χωρίς να αποδεσμεύσει , συσσωρεύονται στην κατανάλωση πόρων σε μια αξιοσημείωτη έκταση . Όταν ανοίξετε το Task Manager σε έναν υπολογιστή και να δούμε τη χρήση της μνήμης ενός προγράμματος συνεχώς αναρρίχηση , ενώ σε αδράνεια , το πρόγραμμα αυτό πιθανόν να έχει μια διαρροή μνήμης . Στη C + + , την εκχώρηση μνήμης στην " GlobalAlloc " ή " malloc " λειτουργίες . Προγράμματα γραμμένα σε C + + χρησιμοποιεί " GlobalFree » ή «δωρεάν» λειτουργίες για να ελευθερώσετε μνήμη . Οδηγίες
Η

1 Ανοίξτε το κωδικό + C + σε ένα περιβάλλον ανάπτυξης . 2

Σάρωση ολόκληρο τον κώδικα για " GlobalAlloc . " Μετρήστε πόσες φορές έχετε έρθει σε αυτό . Αυτό αντιπροσωπεύει το ποσό των φορές το πρόγραμμα διαθέτει μνήμη .
Εικόνων 3

Σάρωση ο κωδικός πάλι για " GlobalFree " και να μετρήσει τον αριθμό των παρουσιών . Αφαιρείται το ποσό των " GlobalFree " κλήσεις από τις κλήσεις " GlobalAlloc " . Εάν ο αριθμός βγαίνει πάνω από το μηδέν , έχετε μια διαρροή μνήμης .
Η

4 Επαναλάβετε την ίδια διαδικασία για " malloc " και "ελεύθερο".

Η

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα