1
我开始处理NSOperations和(像平时一样并发)我正在观察奇怪的行为。 在我的课堂我有一个实例变量:消息发送到从未被释放的释放实例
NSMutableArray *postResultsArray;
当UI一个按钮被按下我初始化数组:
postResultsArray = [NSMutableArray array];
和设置操作(与依赖关系一起)。
在我创建一个自定义对象,并尝试添加到阵列的操作:
PostResult *result = [[PostResult alloc] initWithServiceName:@"Sth" andResult:someResult];
[self.postResultsArray addObject:result];
,并同时加入我得到:
- [CFArray挽留]:消息发送到释放实例0x3b40c30
这是奇怪的,因为我不在我的代码中任何地方释放数组(我做过,但是当问题开始出现时,我评论了所有的发布确保他们不是这种情况)。我也曾经有@synchronized节如下:
PostResult *result = [[PostResult alloc] initWithServiceName:@"Sth" andResult:someResult];
@synchronized (self.postResultsArray) {
[self.postResultsArray addObject:result];
}
但问题是相同的(但是,错误是为同步操作)。
任何想法我可能做错了什么?
是的,就是这样。很高兴知道。非常感谢! – Jakub 2010-04-11 13:12:11