【发布时间】:2014-11-24 00:06:33
【问题描述】:
我遇到了一个奇怪的问题。我可以很好地访问我的类单例实例,但是如果我再次尝试访问它,它似乎会挂起。这是代码的简单版本:
private let _SharedInstance = MyManager()
class MyManager: NSObject {
class var sharedInstance: MyManager {
return _SharedInstance
}
override init() {
super.init()
println("init")
println(self.accessToken())
println(MyManager)
println("test 1")
println(MyManager.sharedInstance)
println("test 2")
}
}
在这种情况下,它是从自身的 init 内部调用它,但它发生在其他地方。
代码永远不会到达test 2。一旦它访问MyManager.sharedInstance,它就会挂起。没有错误或警告。
如果我暂停调试器,我可以看到它当前在 semaphore_wait_trap 上运行
图片(不同类名):
重新启动 Xcode 或计算机没有帮助。
【问题讨论】:
标签: objective-c xcode swift