1
选择器已按照帧率预定,[self schedule:@selector(tick:)];
并且它始终保持执行(自应用程序运行以来)。从而不断增加内存,导致性能下降。所以我们可以在消除选择器的同时继续释放内存。如何释放一个scedule选择器占用的内存?
选择器已按照帧率预定,[self schedule:@selector(tick:)];
并且它始终保持执行(自应用程序运行以来)。从而不断增加内存,导致性能下降。所以我们可以在消除选择器的同时继续释放内存。如何释放一个scedule选择器占用的内存?
时间表只会以帧速率间隔调用选择器,此操作不会占用内存。
如果你有增加的内存,也许这是因为你的代码中有内存泄漏:tick:方法。
而且不需要autoreleasepool,因为schedule允许运行循环管理的autorelease池释放自动释放的对象。
如果您有一个帧速率同步的调度程序,则应该使用scheduleUpdate,它速度更快,并且占用的内存更少。但就像@约翰姆说的那样,你的问题很可能在其他地方。 –