Mögliche Duplizieren:
performSelector may cause a leak because its selector is unknownverhindern Warnung von „Perform kann ein Leck verursachen, weil seine Wähler unbekannt ist“
habe ich eine NSDictionary meinen Input (NSString) zu konvertieren zum Wähler . Die „Selektor Karte“ sah sich wie folgt:
[self setCmdSelectorMap:[NSDictionary dictionaryWithObjectsAndKeys:
[NSValue valueWithPointer:@selector(doOpenBrowserByString:)], @"openBrowser",
[NSValue valueWithPointer:@selector(syncData:)], @"sync",
[NSValue valueWithPointer:@selector(getCachedString:)], @"getCachedString",
nil]];
Wenn ich versuche, einen dieser Wähler zu holen und führen es durch folgt, ist es eine Warnung verursachen:
sel = [[_cmdMap objectForKey:command] pointerValue];
NSLog(@"selector determined : %@", NSStringFromSelector(sel));
[self performSelector:sel withObject:arguments];
Die Warnung sagt: perform kann ein Leck verursachen, weil sein Selektor unbekannt ist. Gibt es eine Möglichkeit, diese Warnung zu vermeiden? Oder gibt es einen "sichereren" Weg, eine solche Aktion durchzuführen?
Danke Jungs :)
möglich Duplikat [perform ein Leck verursachen kann, weil seine Wähler unbekannt ist] (http://stackoverflow.com/questions/7017281/ performselector-cause-a-leak-weil-es-selector-is-unknown) [performSelector: warning] (http://stackoverflow.com/questions/8773226/performselector-warning), [Warum warnen mit performSelector:] (http://stackoverflow.com/questions/10531119/), [Wie verhindere ich Clangs Warnung auf performSelector:?] (http://stackoverflow.com/questions/7043999/) –
@JacquesCousteau, wo immer Sie fi nd die Zeit, all diese zu bekommen? Wie auch immer, du bist mit den Duplikaten an der Reihe, Mann. Mach weiter! – CodaFi
@Coda: Ich habe gerade ["\ [objc \] performSelector kann Leck verursachen"] (http://stackoverflow.com/search?q=%5Bobjc%5D+performSelector+may+cause+leak) in das Suchfeld und schaute auf die erste Seite der Ergebnisse, aber ich schätze die Wertschätzung. –