2011-12-06 74 views
0

我有一個NSManagedObject類型的全局實例。對於全局實例,它有幾個成員變量誰是通過以下方式NSManagedObject實例的線程安全性?

@property (retain) NSString *value; 

宣佈@dynamic性質和我有幾個線程,會做以下幾個簡單的操作

myInstance.value = [NSString stringWithString:newValue]; 

所以問題是 - 我需要同步上述操作嗎?或者它自然是線程安全的(因爲他們正在照顧NSManagedObject)?

+1

對不起,我修好了 - 應該是以上操作。該操作意味着分配操作 – tom

回答

3

根據文檔,這不是線程安全的。有關於線程和核心數據的完整文章,您可以閱讀。從本質上講,它說爲了正確使用線程和Core Data,你需要爲每個線程分別管理對象上下文。在「如果您不使用線程遏制」部分中,它特別指出,跨線程讀取和變更管理對象可能會產生不必要的影響。