Swift ';NSInvocationOperation&x27;在Xcode 6.1中不可用

Swift ';NSInvocationOperation&x27;在Xcode 6.1中不可用,swift,ios8,nsinvocationoperation,Swift,Ios8,Nsinvocationoperation,我的代码突然无法在Xcode 6.1中编译(我确信它在Xcode 6 GM和beta版本中工作)。它显示错误消息: “NSInvocationOperation”不可用 我的代码是: let operation = NSInvocationOperation(target:self, selector:"backgroundRun:", object:self) 有人能帮忙吗?谢谢。从Xcode 6.1开始,NSInvocation在Swift中被禁用,因此,NSInvocationOpera

我的代码突然无法在Xcode 6.1中编译(我确信它在Xcode 6 GM和beta版本中工作)。它显示错误消息:

“NSInvocationOperation”不可用

我的代码是:

let operation = NSInvocationOperation(target:self, selector:"backgroundRun:", object:self)

有人能帮忙吗?谢谢。

从Xcode 6.1开始,
NSInvocation
在Swift中被禁用,因此,
NSInvocationOperation
也被禁用。看

因为它不是类型安全或电弧安全的。即使在Objective-C中,尝试使用它时也很容易击中自己的脚,尤其是在ARC下。改用闭包/块

您必须在Swift中使用
NSBlockOperation

addOperationWithBlock
NSOperationQueue

queue.addOperationWithBlock { [weak self] in
    self?.backgroundRun(self)
    return
}

列表
NSInvocationOperation
已被删除。谢谢。我现在正在使用它。
NSInvocation
实际上从未在Swift中提供过<代码>NSInvocationOperation仅在iOS 8.1 SDK中删除。