【发布时间】:2014-05-08 22:59:33
【问题描述】:
想象一下这样的情况:
- (void)doSomethingWithView:(UIView)view {
for (UIView *oneView in view.subviews) {
[self doSomethingWithView:oneView];
}
}
或类似的块
void (^doSomething)(NSArray *numbers);
doSomething = ^void(NSArray *numbers){
// ... bla bla
if (condition) {
doSomething(numbers);
}
};
在堆栈和堆方面会发生什么?我的感觉是块/函数可能会在堆栈和堆上生成很多东西,这些东西永远不会释放到应用程序在没有内存的情况下崩溃的程度。
我会冒这个风险吗?
【问题讨论】:
标签: ios objective-c cocoa heap-memory stack-memory