假设我们有一个可以被多个线程访问的对象和一个分发对象引用的全局单例,也可以被多个线程访问。
class Book {
private string title;
public Book(string title) {
this.title = title;
}
public string Title { get { return title; } }
}
class BookstoreSingleton {
public BookstoreSingleton Instance { ... }
public Book Book { get { return this.book; } }
}
我是否认为 Book.Title
和 BookstoreSingleton.Book
都需要线程安全代码?
最佳答案
您的类看起来是不可变的并且是线程安全的。您不需要同步对这些属性的访问,因为它们只能被读取,只需确保您只初始化一次单例(Instance
属性)并且您不能再次为其赋值时间。
关于c# - 这里需要线程安全代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3594928/