In following code:
class DispatchQueuer: DispatchQueuerable {
private let queue: DispatchQueue
// MARK: - Initialization
init(queue: DispatchQueue) {
self.queue = queue
}
func asyncBackground(block: @escaping () -> Void) {
DispatchQueue(label: "", qos: .background).async {
block() //EXC_BAD_ACCESS
}
}
}
Why it happens?
I use it the following way:
private let dispatchQueuer: DispatchQueuerable
dispatchQueuer.asyncBackground { [weak self] in
self?.setupTags()
self?.setupSuppliers()
self?.dispatchQueuer.asyncMain {
completion?()
}
}