2010-05-31 17 views
0

Je sais que ce n'est probablement pas une question facile à répondre, car il est difficile à décrire sur ma main. J'ai une application qui fonctionne sans problèmes sur le périphérique dans la configuration de débogage (également plusieurs fois).App se bloque seulement après la deuxième exécution seulement dans la configuration de libération

Une fois que je l'ai mis en configuration de libération (dont j'ai besoin avant de publier?), L'application démarre sans problèmes et je peux passer à la page suivante, où je montre un graphique core-plot. MAIS seulement si je le lance depuis xcode. Dès que je termine l'application et la relance, elle s'ouvre sans problème, mais à la page suivante, elle plante. Maintenant, je n'ai rien à déboguer autre que le rapport d'accident:

Exception Type: EXC_BAD_ACCESS (SIGSEGV) 
Exception Codes: KERN_INVALID_ADDRESS at 0xcf10000a 
Crashed Thread: 0 

Thread 0 Crashed: 
0 libobjc.A.dylib     0x000026f2 objc_msgSend + 14 
1 StandbyCheck     0x0001fbea -[CPXYTheme newGraph] (CPXYTheme.m:36) 
2 StandbyCheck     0x00007c06 -[SCGraphCell initWithStyle:reuseIdentifier:] (SCGraphCell.m:28) 
3 StandbyCheck     0x00076b4a -[TTTableViewDataSource tableView:cellForRowAtIndexPath:] (TTTableViewDataSource.m:128) 
4 UIKit       0x0007797a -[UITableView(UITableViewInternal) _createPreparedCellForGlobalRow:withIndexPath:] + 514 
5 UIKit       0x000776b0 -[UITableView(UITableViewInternal) _createPreparedCellForGlobalRow:] + 28 
6 UIKit       0x00037e78 -[UITableView(_UITableViewPrivate) _updateVisibleCellsNow] + 940 
7 UIKit       0x000367d4 -[UITableView layoutSubviews] + 176 
8 StandbyCheck     0x000734b8 -[TTTableView layoutSubviews] (TTTableView.m:226) 

[...]

Maintenant, peut pointer quelqu'un dans toutes les directions? Quelles sont les différences dans les modes de débogage/relâchement? Comment pourrais-je déboguer cet échec?

Je l'ai cherchée pendant des heures maintenant, s'il vous plaît aidez-moi :( Merci, Dennis

Répondre

1

Pour autant que je sache, il n'y a rien dans cette ligne de CPXYTheme.m qui provoquerait un accident. En particulier, comme il est un appel à self, avec un argument qui a été construit dans la méthode où se produit le crash OK, ce qui laisse la possibilité évidente d'un problème de simultanéité - d'autant plus que le crash se produit seulement dans certaines configurations et pas tout le temps. sur d'autres threads qui pourraient affecter la durée de vie de votre objet CPXYTheme, ou du SCGraphCell, ou de tout objet qui les "possède" (la source de données de vue de table, voir le contrôleur etc)?