Objective-Cの 宣言プロパティメモリ管理方法

1.値を割り当てる
assign、retain、copyの使い方
サンプルコード
@property (assign)Person *person;
@synthesize person=_person;

1.1 -(void)setPerson:(Person *)person{
if(_person!=person){
[_person release];
_person=[person retain]; } }

1.2 -(void)setPerson:(Person *)person{
if(_person!=person){ [_person release];
_person=[person copy]; } }

2.readwrite、readonly
readwrite:getter,setterメソッド
readonly:getterメソッド
サンプルコード:
-(void)setPerson:(Person *)person{
@synchronized(self){ _person=person; } } //方法を設定

3.アトミック性
atomic:マルチスレッド環境でスレッド保護がある、デフォルト
noatomic: マルチスレッド環境では、スレッド保護がありません
-(Person *)person{ @synchronized(self){ return _person; } }

 

IOS

Posted by arkgame