GBAsyncOperation 0.2.1

GBAsyncOperation 0.2.1

Gennady Berezovsky 管理。



  • Gennady Berezovsky

GBAsyncOperation

CI Status Version License Platform

示例

要运行示例项目,首先克隆仓库,然后在 Example 目录中运行 pod install

要求

安装

GBAsyncOperation 通过 CocoaPods 提供支持。要安装它,只需将以下行添加到您的 Podfile 中:

pod 'GBAsyncOperation'

使用

导入

import GBAsyncOperation

GBAsyncOperation的子类化

这是一个典型的异步操作子类的示例。为了使操作生命周期正常,需要在异步代码完成后调用finish()方法。这将向操作发出信号的命令是结束,否则它将卡在队列中。

class MyAsyncOperation: GBAsyncOperation {

    // your properties
    
    var completion: () -> Void
    
    init(completion: @escaping () -> Void) {
        self.completion = completion 
    }

    override func main() {
        // your async code here, which eventually calls completeOperation()
    }

    func completeOperation() {
        guard !isCancelled else {
            return
        }
        
        completion()
        finish()
    }
}

使用GBSerialGroupOperation捆绑操作

GBSerialGroupOperation类提供了一种将异步操作组成捆绑并创建它们之间依赖的功能。

作者

Gennady Berezovsky

许可

GBAsyncOperation在MIT许可下可用。有关更多信息,请参阅LICENSE文件。