据我所知structs
是线程安全的。但是,当它具有class
属性时,它仍然是线程安全的吗?
struct UserLocation {
let geocoder = CLGeocoder()
}
我之所以这样问,是因为我当前正在调试指向我们的struct对象的随机崩溃。我们的struct对象正在多个线程中传递。
由于代码的所有权,我无法在此处发布确切的代码,因此我创建了一小段代码。
答案 0 :(得分:0)
根据OP请求,他将接受此评论作为答案。
好吧,无论结构内部是什么,它的值驱动着什么使它成为线程安全的,因此其中的一个类实例完全可以,因为您正在传递它的新值,但是我不确定100%我会建议将属性设置为(lazy var)