退出页面时,未取消performSelector方法,导致内存泄露

今天遇到一个问题:退出页面的时候,未把performSelector的方法取消,导致了内存泄露。

所以,现在整理整理一下,取消performSelector的方法。

performSelector方法,默认在当前线程,如果子线程使用,需要自己去启动,但是不需要Add,只需要run就可以了。此方法是一种非阻塞的执行方式。

添加performSelector用法:

[self performSelector:@selector(delayMethod) withObject:nil/*可传任意类型参数*/ afterDelay:2.0];


Object为ni的取消方法:

[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayMethod:) object:nil]; //取消所有的performSelector:方法


Object不为ni的取消方法:(以下两个方法必须都要调用)

[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayMethod:) object:nil]; //取消所有的performSelector:方法

[[self class] cancelPreviousPerformRequestsWithTarget:self];//取消本类中的performSelector:方法

你可能感兴趣的:(退出页面时,未取消performSelector方法,导致内存泄露)