//
|
// HDLSmartLinkTimerManager.h
|
// HdlSmartIoT
|
//
|
// Created by 陈启扬 on 2021/9/30.
|
//
|
|
#import <Foundation/Foundation.h>
|
|
NS_ASSUME_NONNULL_BEGIN
|
typedef void (^HDLLPCoutdownBlock)(double count);
|
|
typedef void (^HDLLPCoutdownVoidBlock)(void);
|
|
@interface HDLLinphoneTimerManager : NSObject
|
// 单例
|
+ (instancetype)sharedInstance ;
|
|
/**
|
启动一个timer
|
@param interval 执行的时间间隔(单位是秒)
|
@param timerName timer的名称,作为唯一标识。
|
@param count 倒计时block
|
@param finished 时间间隔到点时执行的block。
|
*/
|
- (void)scheduleTimerWithInterval:(double)interval timerName:(NSString *)timerName count:(HDLLPCoutdownBlock)count
|
finished:(dispatch_block_t)finished;
|
///**
|
// 启动一个timer(传的NSNumber对象)
|
// @param intervalNum 执行的时间间隔(单位是秒)
|
// @param timerName timer的名称,作为唯一标识。
|
// @param count 倒计时block
|
// @param finished 时间间隔到点时执行的block。
|
// */
|
//- (void)scheduleTimerWithIntervalNum:(NSNumber*)intervalNum timerName:(NSString *)timerName count:(HDLOPPCoutdownBlock)count
|
// finished:(dispatch_block_t)finished;
|
|
/*可设置单位的倒计时
|
@param interval 总时间
|
@param unit 计时单位
|
@param timerName timer的名称,作为唯一标识。
|
@param count 倒计时block
|
@param finished 时间间隔到点时执行的block。
|
*/
|
- (void)scheduleTimerWithInterval:(double)interval unit:(double)unit timerName:(NSString *)timerName count:(HDLLPCoutdownBlock)count
|
finished:(dispatch_block_t)finished;
|
/**
|
启动一个计时
|
@param rateTime 执行的时间间隔(单位是秒)
|
@param timerName timer的名称,作为唯一标识。
|
@param count 计时block
|
*/
|
- (void)scheduleTimerWithRateTime:(float)rateTime timerName:(NSString *)timerName count:(HDLLPCoutdownVoidBlock)count;
|
|
/**
|
取消timer
|
@param timerName timer的名称。
|
*/
|
- (void)cancelTimerByName:(NSString *)timerName;
|
|
/**
|
启动timer
|
@param timerName timer的名称。
|
*/
|
- (void)resumeTimerByName:(NSString *)timerName;
|
|
|
/**
|
挂起timer
|
@param timerName timer的名称。
|
*/
|
- (void)suspendTimerByName:(NSString *)timerName;
|
|
|
/*获取timer
|
@param timerName timer的名称。
|
*/
|
-(dispatch_source_t)timerByNmae:(NSString *)timerName;
|
|
@end
|
|
NS_ASSUME_NONNULL_END
|