// // MyGCDTimer.h // ORKApp // // Created by Howard on 2021/9/2. // #import <Foundation/Foundation.h> #import <CommonSdk/MyAppConstant.h> /** GCD定时器工具 */ @class MyGCDTimer; typedef void (^MyGCDTimerHandler)(MyGCDTimer *timer, BOOL finished); @interface MyGCDTimer : NSObject @property (nonatomic, assign) NSTimeInterval duration;//持续时长 @property (nonatomic, assign) NSTimeInterval interval;//每隔多少时间执行一次,单位s - (NSTimeInterval)queue_runtime;//运行时长 /** 开始定时,无限循环 time:每隔多少时间执行一次,单位s duration:定时器持续时间 handler:事件回调 */ - (void)start:(NSTimeInterval)time duration:(NSTimeInterval)duration handler:(MyGCDTimerHandler)handler; /** 开始定时,无限循环 time:每隔多少时间执行一次,单位s handler:事件回调 */ - (void)start:(NSTimeInterval)time handler:(MyGCDTimerHandler)handler; /** 中止定时器 */ - (void)stop; /** 延迟执行 time:延迟时间,单位s handler:事件回调 */ + (void)delay:(NSTimeInterval)time handler:(MyCommonBlock)handler; @end