objective-c - mac - xcode descargar
para evitar advertencias de "PerformSelect puede causar una fuga porque su selector es desconocido" (1)
Solo usa esto:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
[self performSelector:sel withObject:arguments];
#pragma clang diagnostic pop
Posible duplicado:
performSelector puede causar una fuga porque su selector es desconocido
Hice un NSDictionary para convertir mi entrada (NSString) al selector. El "mapa selector" se ve de la siguiente manera:
[self setCmdSelectorMap:[NSDictionary dictionaryWithObjectsAndKeys:
[NSValue valueWithPointer:@selector(doOpenBrowserByString:)], @"openBrowser",
[NSValue valueWithPointer:@selector(syncData:)], @"sync",
[NSValue valueWithPointer:@selector(getCachedString:)], @"getCachedString",
nil]];
Cuando trato de buscar uno de estos selectores y lo hago de la siguiente manera, aparece una advertencia:
sel = [[_cmdMap objectForKey:command] pointerValue];
NSLog(@"selector determined : %@", NSStringFromSelector(sel));
[self performSelector:sel withObject:arguments];
La advertencia dice: PerformSelector puede causar una fuga porque su selector es desconocido. ¿Hay alguna manera de evitar que esta advertencia ocurra? o hay alguna forma "más segura" de realizar tal acción?
Gracias chicos :)