NKCWeakTimer
可以用作 NSTimer
,但不会保留 Target。
NKCWeakTimer
由 GCD
实现,并且所有我考虑到的功能都与 NSTimer
相似。
您可以将
NKCWeakTimer
作为普通的 NSObject 使用,将其标记为强引用,而无需在dealloc
方法中释放它。当
retainCount
等于 0 时,NKCWeakTimer
将调用invalidate
方法并自动释放自己。当然,您可以选择在任何需要的时候调用invalidate
方法。
使用以下类方法创建一个 NKCWeakTimer
对象,NKCWeakTimer
将自动调度。
使用 SEL 如下
+ (instancetype)scheduledTimerWithTimeInterval:(NSTimeInterval)interval
target:(id)aTarget
selector:(SEL)aSelector
userInfo:(nullable id)userInfo
repeats:(BOOL)repeats;
使用 Block 如下
+ (instancetype)scheduledTimerWithTimeInterval:(NSTimeInterval)interval
userInfo:(nullable id)userInfo
repeats:(BOOL)repeats
block:(void (^)(NKCWeakTimer *timer))block;
只需要将此行添加到您的 Podfile
中
pod 'NKCWeakTimer'
简单地将文件 NKCWeakTimer.h
和 NKCWeakTimer.m
添加到您的项目中。
-fobjc-arc
标记 NKCWeakTimer
。