@techreport{oai:ipsj.ixsq.nii.ac.jp:00081065, author = {平野, 聡 and 官, 森林 and 名嘉村, 盛和 and Hirano, Satoshi and Guan, Senlin and Nakamura, Morikazu}, issue = {41}, month = {Mar}, note = {スマートデバイスiPhone/iPadにおいて,iOS 5からオブジェクトの自動メモリ管理(Automatic Reference Counting, ARC)が提供されたが,従来のretain/releaseによる手動メモリ管理(非ARC)のソースコードと互換性がない.ARCと非ARCの両方に対応するライブラリやフレームワークの開発のために,同一のソースコードをARCと非ARCの両方に対応させる6つの手法を提示し,5つの評価基準に基づいて比較した.応用として,その中で最も評価が高かったselfによる無害化の手法をApache Thriftに適用した.Thriftは基幹的通信基盤としてFacebook,Evernote,Cassandra等で広く使用されているクロスプラットホームの通信ミドルウェアである.本手法による改良はThriftプロジェクトにおいて有効性確認後に採用され,多くのプロジェクトで使用されつつある., iOS's new memory management scheme, Automatic Reference Counting (ARC) lacks source code level compatibility with its conventional memory management scheme by retain/release methods. We developed and evaluated six methods for coexisting both ARC and non-ARC within the same source code. We applied the best one, stub-by-self method to Apache Thrift, a popular cross-platform RPC technology used in many projects such as Facebook and Evernote. Since it was proven to be effective in the Thrift project, it was merged to the source tree and has become used widely in iOS based projects.}, title = {iOSにおけるARCと非ARCの同一ソースコード上での共存手法}, year = {2012} }