■ARC(Automatic Reference Counting)とは
インスタンスを生成するたびに、参照カウントを用いてそのインスタンスのためのメモリ領域を自動的に確保、不要になったタイミングでメモリを自動的に解放する方式です。デフォルトは強参照となります。
■循環参照とは
2つのインスタンスがお互いに強参照を持ちあう状態を循環参照と言います。この場合、インスタンスが不要になっても参照カウントが0になることはないため、メモリリークする可能性があります。
■循環参照の例
以下Appleのドキュメントを読んだ際に、翻訳ではわかりにくい部分があったため、一部コメントを追記したものを本記事に残します。
The Swift Programming Language (Swift 4.1): Automatic Reference Counting
■参考文献/関連リンク
・石川 洋資 西山 勇世 (2018) [改訂新版]Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)
・The Swift Programming Language (Swift 4.1): Automatic Reference Counting