💯A tiny library to make using GCD easier.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Assets
EasyGCD
Sample
docs
.gitignore
.swift-version
Document
EasyGCD.podspec
LICENSE
README.md

README.md

EasyGCD
Version Author Build Passing Swift
Platforms MIT
Cocoapods Carthage SPM

What's this?

EasyGCD is a tiny library to make using GCD easier. written in Swift.

Requirements

  • iOS 8.0+
  • macOS 10.10+
  • watchOS 2.0+
  • tvOS 9.0+
  • Xcode 8 with Swift 3

Installation

CocoaPods

pod 'EasyGCD'

Contribution

You are welcome to fork and submit pull requests.

License

EasyGCD is open-sourced software, licensed under the MIT license.

Usage

dispatch {
  // asynchronously on the main queue
}

main {
  // asynchronously on the main queue
}

global {
  // asynchronously on the global queue
}
import EasyGCD

func sync() {
    EasyGCD.sync(.global(qos: .background)) {
        print("sync @ background global queue")
    }
}

func async() {
    EasyGCD.async(EasyGCDQueue.global(.background)) {
        print("async @ background global queue")
    }
    EasyGCD.async {
        print("async @ main queue")
    }
}

func after() {
    EasyGCD.after(2.0) {
        print("2 seconds later")
    }
    EasyGCD.after(4, queue: .global(qos: .default)) {
        print("4 seconds later")
    }
    EasyGCD.after(DispatchTime.now() + 6, queue: .main) {
        print("6 seconds later")
    }
}

func once() {
    EasyGCD.once(token: "Once") {
        print("Once")
    }
}