0
我被ARC编译器收到以下警告为什么会有警告?我可以忽略它吗?
performSelector可能会导致泄漏,因为它的选择是未知
这是我的代码:
[self performSelector:config.selector];
为什么我得到这个警告吗?我知道编译器不能检查选择器是否存在,但为什么会导致泄漏?我怎样才能更改我的代码,以便我不再收到此警告?
我被ARC编译器收到以下警告为什么会有警告?我可以忽略它吗?
performSelector可能会导致泄漏,因为它的选择是未知
这是我的代码:
[self performSelector:config.selector];
为什么我得到这个警告吗?我知道编译器不能检查选择器是否存在,但为什么会导致泄漏?我怎样才能更改我的代码,以便我不再收到此警告?
由于@rmaddy指出,这是performSelector may cause a leak because its selector is unknown
重复有比任何抑制警告或玩其他游戏一个更好的解决方案。
而不是使用SEL
,而是使用回调块。
I.e.而不是config.selector
,去config.handlerBlock(...)
。
这样,你就可以在整个过程中保持完整的类型安全,没有任何东西可以使用ARC,也没有#pragma dance可以暂时禁用警告或任何其他的东西。
请在发布之前对错误进行搜索。 – rmaddy
@rmaddy是正确的;这是一个愚蠢的http://stackoverflow.com/questions/7017281/performselector-may-cause-a-leak-because-its-selector-is-unknown – bbum
@bbum如果这是一个骗局,你为什么重新打开? – rmaddy