0
我有一個屬性(原子,保留)NSString *標識符可以從多個線程讀取。因此,這是使其線程safe-使屬性線程安全
- (NSString *)identifier
{ @synchronized(self)
{
return [_identifier retain] autorelease];
}
}
或
- (NSString *)identifier
{ @synchronized(identifier)
{
return [_identifier retain] autorelease];
}
}
逸岸正確的方法,我想知道的關鍵參數的目的是@synchronize(鍵)。感謝您的幫助。
在這種情況下,「線程安全」是什麼意思?只是它在訪問時不會崩潰,或者它有一些特殊的線程相關的功能? – 2014-10-09 14:41:10
帶有(默認)'atomic'屬性的自動生成的getter將做正確的事情;你爲什麼自己產生吸氣劑? – Droppy 2014-10-09 14:44:19
@JoachimIsaksson,通過線程安全的我的意思是數據的完整性。@ Droppy原子不保證線程安全。 – russell 2014-10-09 15:23:47