Pour mettre à jour l'emplacement d'un indicateur GPS sur Mapview ...
[mapView removeAnnotation:myGpsAnnotation];
[myGpsAnnotation release];
myGpsAnnotation = nil;
myGpsAnnotation = [[MapLocationAnnotation alloc] initWithCoordinate:region.center annotationType:MapAnnotationTypeGps title:MAP_ANNOTATION_TYPE_GPS];
[mapView addAnnotation:myGpsAnnotation];
... Je vois la mémoire nette escalade lentement Instruments (simulateur). Non « fuite » blip, mais « Bytes Net » et « # Net » incrémenter lentement ... à moins que ce code est commenté. Je suis 100% certain que c'est le code incriminé.
Mais si je fais ce qui suit ...
[mapView removeAnnotation:myGpsAnnotation];
[myGpsAnnotation release];
myGpsAnnotation = nil;
myGpsAnnotation = [[MapLocationAnnotation alloc] initWithCoordinate:region.center annotationType:MapAnnotationTypeGps title:MAP_ANNOTATION_TYPE_GPS];
[mapView addAnnotation:myGpsAnnotation];
[mapView removeAnnotation:myGpsAnnotation];
[mapView addAnnotation:myGpsAnnotation];
[mapView removeAnnotation:myGpsAnnotation];
[mapView addAnnotation:myGpsAnnotation];
... alors le « Bytes net » et « # Net » augmenter beaucoup plus rapidement. Est-il possible que ce n'est pas mon erreur, et je suis en train de traquer une fuite dans MapKit? Suis-je vraiment une fuite mémoire? Encore une fois, rien n'apparaît sous la rubrique « Fuites », mais je ne vois pas pourquoi les valeurs nettes seraient sans cesse de grimper.
Merci pour toute aide, -Gord













