2017-02-22 1 views
0

Wenn ich meine App mit Breakpoint ausführen, läuft es gut und gibt keinen Fehler, aber wenn ich Breakpoint und Brunst entfernen, stürzt es ab. Und es stürzt nicht auf Simulator und stürzt auf Gerät.So in diesem Fall Fehler finden?App stürzt ab, wenn ich App ohne Haltepunkte ausführen, aber wenn ich mit Haltepunkten laufen, läuft es gut in ios.Wie Problem zu überprüfen?

+0

aktivieren Zombies und einmal überprüfen –

+0

Wie Sie Zombies aktivieren? – sp309

+0

siehe http://stackoverflow.com/questions/5386160/how-to-enable-nszombie-in-xcode –

Antwort

0

Es ist ein Thread Problem .. versuchen zu

runOnMainQueueWithoutDeadlockingUpload(^{ 


    //Do stuff 
     }); 

void runOnMainQueueWithoutDeadlockingUpload(void (^block)(void)) 
{ 
    if ([NSThread isMainThread]) 
    { 
     block(); 
    } 
    else 
    { 
     dispatch_sync(dispatch_get_main_queue(), block); 
    } 
} 

für schwere Aufgabe, die Sie während Sie die App starten.

+1

Woher wissen Sie, dass seine Thread-Problem? –

+0

Ich habe mehrere Male überprüft.Es stürzt beim Ausführen direkt ab, aber wenn ich Haltepunkt verwende, stürzt es nicht ab. – sp309

+0

können Sie einige Protokolle veröffentlichen, warum es stürzt ?? – vivek

0

es ist sehr einfach, wenn u Punkt setzen brechen sie nicht abstürzen wird und ohne Breakpoint ist es Absturz so, welchen Code u auszuführen sind gewisse Verzögerung setzen, dann wird es

double delayInSeconds = 1.0; 
    dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC)); 
    dispatch_after(popTime, dispatch_get_main_queue(), ^(void){ 

// Add Your code here 

}); 
+0

Nein löst es nicht Problem .. @ ravi.p – sp309

+0

@ sp309 hast du versucht mit Verzögerung mit Block? –

0

Etwas lösen falsch in async passiert Gewinde und in besonderen Fällen andere Gewinde langsam arbeiten! Sie müssen diese Fälle überprüfen.

Verwandte Themen