我有一个班级
class Foo {
var bar : Int
var baz : Int
}
我有两个线程,它们都引用了这个类的同一个对象。但是,他们正在访问此类的不同成员
这个线程安全吗?
我的假设是,因为这两个成员是不同的对象。但是,我想仔细检查(考虑到我仍然有限的Swift知识)。
答案 0 :(得分:1)
是的,如果一个线程与一个属性交互而另一个与另一个属性交互,并且您实际上没有任何与这两个属性交互的内容,那么您可能会没事。
不可否认,感觉就像一个低cohesion解决方案(这两个属性真的应该是同一个类的属性吗?)。此外,它似乎有点脆弱(取决于与此对象交互的其他对象遵守线程完整性的这种划分),但从技术上讲它可以工作。
如果你能给我们一个实际的,现实世界的例子来说明你打算如何使用它,我们或许可以提供更具体的建议。