The easiest way to determine if there is a save cycle or not is by simply setting a breakpoint in your controller dealloc() / deinit() (swift), and whenever you click on your controller, check that these methods are called or not, if there is save the loop present in the controller, this method will not be called.
Swift
deinit { print("Memory to be released soon") }
Goal c
- (void)dealloc { NSlog("Memory to be released soon"); }
If you want more detailed information about strong links and the main reasons, you should go with the Tool as another answer.
Anshad
source share