         let queue = OperationQueue()
         queue.name = "com.alecrim.AlecrimAsyncKit.TaskCondition"
         queue.qualityOfService = .utility
-        queue.maxConcurrentOperationCount = ProcessInfo().activeProcessorCount * 2
+        queue.maxConcurrentOperationCount = Queue.defaultMaxConcurrentOperationCount
 
         return queue
     }()

        let queue = OperationQueue()
        queue.name = "com.alecrim.AlecrimAsyncKit.TaskAwaiter"
        queue.qualityOfService = .utility
        queue.maxConcurrentOperationCount = ProcessInfo().activeProcessorCount * 2

        return queue
    }()

    internal static func operationQueue(for dispatchQueue: DispatchQueue) -> OperationQueue {
        let operationQueue = OperationQueue()
        operationQueue.maxConcurrentOperationCount = ProcessInfo().activeProcessorCount * 2
        operationQueue.underlyingQueue = dispatchQueue

        return operationQueue


internal /* namespace */ enum Queue {

    //private static let defaultMaxConcurrentOperationCount = ProcessInfo().activeProcessorCount * 2
    private static let defaultMaxConcurrentOperationCount = OperationQueue.defaultMaxConcurrentOperationCount

    internal static let defaultOperationQueue: OperationQueue = {
        let queue = OperationQueue()
        queue.name = "com.alecrim.AlecrimAsyncKit.Task"
        queue.qualityOfService = .utility
        queue.maxConcurrentOperationCount = Queue.defaultMaxConcurrentOperationCount

        return queue
    }()
