Threader alternatives and similar libraries
Based on the "GCD" category.
Alternatively, view Threader alternatives based on common mentions on social networks and blogs.
-
Async
Syntactic sugar in Swift for asynchronous dispatches in Grand Central Dispatch -
Queuer
Queuer is a queue manager, built on top of OperationQueue and Dispatch (aka GCD). -
YYDispatchQueuePool
iOS utility class to manage global dispatch queue. -
AlecrimAsyncKit
Bringing async and await to Swift world with some flavouring. -
GrandSugarDispatch
Syntactic sugar for Grand Central Dispatch (GCD)
Appwrite - The open-source backend cloud platform
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Threader or a related project?
README
Threader
Pretty GCD calls and easier code execution.
Overview
Threader makes GCD calls easy to read & write. It also provides a simple way to execute code where and when you want.
Installation
CocoaPods
Threader is integrated with CocoaPods!
- Add the following to your
Podfile
:use_frameworks! pod 'Threader'
- In your project directory, run
pod install
- Import the
Threader
module wherever you need it - Profit
Manually
You can also manually add the source files to your project.
- Clone this git repo
- Add all the Swift files in the
Threader/
subdirectory to your project - Profit
Threader
Using Threader
you can fine-tune where and how code get executed.
Threader.DispatchAsyncMain.execute {
/* Important main-thread code */
}
The above simply executes the code within the block on the main-thread. Naturally, Threader
also provides other execution options:
- Immediate - executes the code block immediately on the current thread.
- DispatchAsync - executes the code block asynchronously on a given
DispatchQueue
. - DispatchAsyncMain - executes code block asynchronously on the main thread.
- DispatchAsyncGlobal - executes the code block asynchronously on the global-queue.
- DispatchAsyncAfter - executes the code block asynchronously at a specified
DispatchTime
, on aDispatchQueue
. - DispatchAsyncBarrier - executes the code block asynchronously blocking on a given
DispatchQueue
. - DispatchSync - executes the code block synchronously on a given
DispatchQueue
. - DispatchSyncBarrier - executes the code block synchronously blocking on a given
DispatchQueue
. - Operation - executes the code block on a given
OperationQueue
. - Block - executes code from a closure.
- Default - executes code on the current thread, or on a global
DispatchQueue
depending on the block of code's current position in the thread.
Dispatching code to a given queue is as easy as:
let queue = DispatchQueue.global()
Threader.DispatchAsync(queue).execute {
/* Important background-thread code */
}
It can even be simplified further:
Threader.DispatchAsync(.global()).execute {
/* Important background-thread code */
}
DispatchQueue
In previous versions of Threader, DispatchQueue
was a small wrapper around C-based GCD calls. However, as of Swift 3,
Apple decided to provide their own solution. Not surprisingly, the also named their wrapper DispatchQueue
.
Moving forward, Threader will use Apple's native implementation of DispatchQueue
for all GCD related calls.
*Note that all licence references and agreements mentioned in the Threader README section above
are relevant to that project's source code only.