func joinOrTimeout()

in swift-source/all/Nimbus/Operation+.swift [11:24]


    func joinOrTimeout(timeout: TimeInterval) -> Bool {
        if isFinished {
            return !isCancelled
        }
        DispatchQueue.global().async {
            Thread.sleep(forTimeInterval: timeout)
            if !self.isFinished {
                self.cancel()
            }
        }

        waitUntilFinished()
        return !isCancelled
    }