The logic of CCAutoreleasePool is that, when you call object->autorelease(), this object is put into the autorelease pool. The pool can help you to retain this object’s lifecycle till the end of current message loop. At the end of current meesage loop, if this object hasn’t retained by other class/container, it will be released automaticly.The concept of “current message loop” seems a little bit obscured. What does that mean exactly? Is it referred to a rendering frame or something else? I think the understanding of this concept is very important because the actual time of releasing one autoreleased object depends on it.Could someone explain that please? Thanks a lot.