2009-08-14 6 views
3

J'ai 3 fuites de mémoire après le lancement de l'application iPhone. Ceux-ci restent constants, peu importe ce que je fais dans l'application (plus de fuites).iPhone Attribution d'objets, GeneralBlock-24 & GeneralBlock-48

Mon allocation d'objet net ne cesse de croître. Il y a deux blocs en particulier, GeneralBlock-24 & GeneralBlock-48.

Le bloc-48 devient particulièrement mauvais pendant que le programme est utilisé, prenant des mégaoctets de mémoire. La bibliothèque qui semble attribuer les objets dans les deux blocs est QuartzCore. L'application avait une référence à l'infrastructure QuartzCore, mais j'ai éliminé toutes les références à celle-ci.

p.s .: c'est tout sur l'appareil, et non le simulateur

Répondre

3

Je l'ai trouvé! Lors de son exécution sur le simulateur avec Instruments, les GeneralBlocks sont signalés comme un seul GeneralBlock-0. En cherchant sur le web, il semble qu'il y ait un bug dans les instruments objectAlloc reporting et QuartzCore.

Je viens donc ajouté un instrument de moniteur de mémoire et a vu que même si mon allocation d'objets ne cesse de croître non-stop, ma mémoire réel est resté stable (bien, le déplacement haut/bas dans un demi-MB)

J'espère que ce informations utiles à d'autres, j'ai passé une journée à chercher GeneralBlock-24 & 48 en essayant de comprendre jusqu'à ce que je décide de l'exécuter dans le simulateur juste pour le diable