ObjecTips

Swift & Objective-C で iOS とか macOS とか

ARC で retain count を調べる

ARC環境では retain count を取得する retainCountメソッドと手動で retain release を行う retain release メソッドが使えなくなった。
でもいつどこでオブジェクトが保持され解放されているかオブジェクトの retain count を調査したい時がある。
そういう時はオブジェクトを CFTypeRef にキャストして CoreFoundationCFRetainCount に渡してやる事で retain count を調べる事ができる。
コードは以下

プロダクトでの使い所は少ない(もしくは無い)と思うが CFRetainCount 同様に CFRetain CFRelease も使用できる。