gstreamer problème mémoire
Bonjour,
je me permets de venir vers vous suite à un problème de mémoire avec gstreamer. J'ai de multiple questions sur le morceau de code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
gst_init (&argc, &argv);
string action ;
cin >> action ;
int SIZE = 99999;
GstElement **source = NULL;
source = new GstElement*[SIZE];
for(int i=0;i<SIZE;i++){
source[i] = gst_pipeline_new ("filesrc");
}
cin >> action ;
for(int i=0;i<SIZE;i++){
gst_object_unref(GST_OBJECT(source[i]));
}
cout << source[0] << endl;
cin >> action ; |
Quand je lance le programme, il consomme: 2Mo.
Après création des 99999 il consommes 150Mo
Après l'appel de la méthode gst_object_unref je tombe à 80Mo.
Ma grande question. Pourquoi, je ne retombe pas à 2Mo ? De plus, comment savoir si gst_object_unref fonctionne ? En effet, la mémoire semble bien libéré mais l'instruction suivante:
Code:
cout << source[0] << endl;
m'affiche l'adresse mémoire. est-il normal de ne pas avoir 0 ?
Merci