 
     private static let shared = GlobalTracker()
 
+    private let trackingQueue = DispatchQueue(label: "com.global-tracker.tracking-queue", qos: DispatchQoS.background)
+
     init() {}
 
     private var wasConfigured: Bool = false {
         didSet {
             if wasConfigured {
-                DispatchQueue.global().async {
+                trackingQueue.async {
                     self.postponedEvents.forEach { self.track(event: $0) }
                     self.postponedEvents.removeAll()
                     self.postponedProperties.forEach { self.update(property: $0) }

            return
        }

        DispatchQueue.global().async {
            self._update(property: property)
        }
    }

    }

    func configureAdapters() {
        trackingQueue.async {
            self.adapters.forEach { $0.configure() }
            self.wasConfigured = true
        }
