      Clears all dependencies from Guise.
     */
     public static func reset() {
-        dependencies = [:]
+        dispatch_barrier_async(queue) {
+            dependencies = [:]
+        }
     }
     
     /**
      Clears all dependencies in the given container from Guise.
     */
     public static func reset(container: String?) {
-        for key in dependencies.keys {
-            if key.container == container {
-                dependencies.removeValueForKey(key)
+        dispatch_barrier_async(queue) {
+            for key in dependencies.keys {
+                if key.container == container {
+                    dependencies.removeValueForKey(key)
+                }
             }
         }
     }

                unregister(key)
            }
        }
        return (dependency.resolve(parameter, lifecycle: lifecycle) as D)
    }
    
    /**

    }
    
    private static var dependencies = [Key: Dependency]()
    private static let queue = dispatch_queue_create(nil, DISPATCH_QUEUE_CONCURRENT)
    
    private init() {}
    
