     }
     
     public func onComplete(executionContext:ExecutionContext, complete:Try<T> -> Void) -> Void {
-        Queue.simpleFutures.sync {
+        self.futureQueue.async {
             let savedCompletion : OnComplete = {result in
                 executionContext.execute {
                     complete(result)

    }
    
    public func onComplete(executionContext:ExecutionContext, complete:Try<T> -> Void) {
        Queue.simpleFutureStreams.sync {
            let futureComplete : InFuture = {future in
                future.onComplete(executionContext, complete:complete)
            }

        return result;
    }
    
    public func async(block:Void -> Void) {
        dispatch_async(self.queue, block);
    }
    
    public func delay(delay:Double, request:Void -> Void) {
        let popTime = dispatch_time(DISPATCH_TIME_NOW, Int64(Float(delay)*Float(NSEC_PER_SEC)))
        dispatch_after(popTime, self.queue, request)
    }

    
}

