在我的自定义 swift 框架中,我有一个最终用户将使用的单例类。单例 init() 做了很多工作,如果初始化期间出现任何问题,我想抛出错误。
mySingleton.swift
public class mySingleton: NSObject {
.......
public static let sharedInstance = mySingleton(singleton : true)
....
}
private override convenience init() {
assertionFailure( "Please use sharedInstance" )
self.init(singleton : false)
}
private init(singleton: true) {
super.init()
//Other class objects init() etc.
//Some other processing etc.
}
框架用户:
//Initialise framework
mySingleton.sharedInstance
在 mySingleTon 初始化过程中向最终用户抛出错误/异常的最佳方法是什么。
最佳答案
你真的应该认真思考一下你的意图是什么。
单例创建一次并在应用程序的其余部分保持事件状态。如果创建单例失败,您的应用程序将做什么?当我使用单例时,它们必须成功。如果不这样做,我的应用程序将无法运行。
如果创建单例失败,那么最好是生成一个断言来终止应用程序。另一方面,在许多有问题的情况下(例如缺少网络连接),单例的创建不应失败。
关于ios - 如何从 swift singleton init 抛出错误/异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37410192/