mon application iphone a beaucoup de boutons (j'ai créé une vue de calendrier avec des boutons) quand je l'exécute avec l'outil de fuites - aucune fuite n'est découverte. Mais en quelque sorte, l'allocation Live Bytes atteint 21 Mo et les plantages de l'application (lorsque les boutons sont cliqués environ 120 fois).Application Crash - Allocations Live Bytes atteint 20 MB
La mémoire de libération automatique du système n'est-elle plus utilisée ... s'il n'y a pas de fuite, comment la mémoire continue-t-elle d'augmenter? toute idée sur la façon d'aborder ce problème sera appréciée. Merci.
J'utilise sqlite3 dans mon application à charger (calendrier - valeurs magasins contre 30 jours à la fois) - qui appelle la fonction getSingRecord 30 fois ... ci-dessous est le code réel
-(void) insertRecordIntoTableNamed:
{
NSString *sql="Insert Statement......";
char *err;
if (sqlite3_exec(db, [sql UTF8String], NULL, NULL, &err) != SQLITE_OK) {
sqlite3_close(db);
NSAssert(0,@"Error updating table");
}
}
-(NSString *) getSingRecord: (NSString *) getStatement{
NSString *sql=getStatement;
sqlite3_stmt *statement;
NSString *[email protected]"0";
if (sqlite3_prepare_v2(db, [sql UTF8String], -1, &statement, nil) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_ROW) {
char *fieldFlag=(char *) sqlite3_column_text(statement, 0);
fieldFlagI=[[NSString alloc] initWithUTF8String:fieldFlag];
//fieldFlagI=[NSString initWithUTF8String:fieldFlag];
}
sqlite3_finalize(statement);
}
//NSString *ffI=fieldFlagI;
//[fieldFlagI release]
return [fieldFlagI autorelease];
}
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; ... mon code ..... [drain de piscine]; ne fait même pas la moindre différence – user401383