SYTimer 0.1.6

SYTimer 0.1.6

wangson1237 维护。



SYTimer 0.1.6

  • Wangson1237

SYTimer

License MIT  CocoaPods  CocoaPods  Support  Build Status

SYTimer 是一个高性能定时库。它为您提供了使用主 runLoop 或其他 runLoop 在您下一个应用程序中运行的机会。

基于 iOS 的 CFRunLoop Timer。

SYTimer

设置主 runLoop 中 timer 的最简单用法

_timer = [SYTimer mainRunLoopTimerWithRunLoopMode:kCFRunLoopCommonModes block:^(SYTimer * _Nonnull) {
    // do 
}];
[_timer startRepeating:.5];

SYTimer 会将 timer 放入 runLoopCommonModes 堆并设置 runLoop timer 的下一触发日期。

其他 runLoop

_otherRunLoopTimer = [[SYTimer alloc] initWithRunLoop:[SYRunLoop current] runLoopMode:kCFRunLoopCommonModes block:^(SYTimer * timer) {
    // do
}];
[_otherRunLoopTimer startRepeating:.5];

仅需创建 runLoop timer 并将其添加到当前 runLoop。

SYHeap

查看 SYHeap 代码。它包含最小堆和最大堆,INCREASE-KEY 和 DECREASE-KEY。它就像 NSArray 一样使用。

SYThreadSpecificVariable

一个可以像普通变量一样读取和设置的变量,但是它为每个线程持有不同的变量。

SYHeapItem

一种打包为 SYHeapItem 的对象,并将其存储在为其指定的 SYHeap 中。

特性

  • 所有 runLoop 和 runLoopMode 支持。
  • 只在主 runLoop 中创建了两个 runLoop 定时器。
  • 在主 runLoop 中基于优先级队列。
  • ThreadSpecificVariable。
  • Heap 和 HeapItem。

安装

CocoaPods

  1. 在您的 Podfile 中添加 pod 'SYTimer'
  2. 运行 pod installpod update
  3. 导入 <SYTimer/SYTimer.h>。

要求

本库需要支持 iOS 10.0+ 和 Xcode 10.0+。

许可证

SYTimer 在 MIT 许可下提供。有关详细信息,请参阅 LICENSE 文件。