MainScheduler
public final class MainScheduler : SerialDispatchQueueScheduler
Abstracts work that needs to be performed on DispatchQueue.main. In case schedule methods are called from DispatchQueue.main, it will perform action immediately without scheduling.
This scheduler is usually used to perform UI work.
Main scheduler is a specialization of SerialDispatchQueueScheduler.
This scheduler is optimized for observeOn operator. To ensure observable sequence is subscribed on main thread using subscribeOn
operator please use ConcurrentMainScheduler because it is more optimized for that purpose.
-
Initializes new instance of
MainScheduler.Declaration
Swift
public init() -
Singleton instance of
MainSchedulerDeclaration
Swift
public static let instance: MainScheduler -
Singleton instance of
MainSchedulerthat always schedules work asynchronously and doesn’t perform optimizations for calls scheduled from main queue.Declaration
Swift
public static let asyncInstance: SerialDispatchQueueScheduler -
In case this method is called on a background thread it will throw an exception.
Declaration
Swift
public static func ensureExecutingOnScheduler(errorMessage: String? = nil) -
In case this method is running on a background thread it will throw an exception.
Declaration
Swift
public static func ensureRunningOnMainThread(errorMessage: String? = nil)
View on GitHub
MainScheduler Class Reference