dispatch_async
その呼び出しに呼び出しがあります 変数で定義されたブロックを呼び出します
dispatch_async(kBgQueue, ^{
proceedDataBlock(callbackObj, buffer, mbo);
free(buffer);
});
「内部」ブロックでは、バッファ(const char *)でいくつかのことを行い、obj-c オブジェクトを作成して、callbackobj のように渡します
Table *dataList = [[Table alloc] init ...];
[callbackObj performSelectorOnMainThread:@selector(recieveDataModelsFinished:) withObject:[dataList autorelease] waitUntilDone:YES];
私のコールバックオブジェクトは
-(void)recieveDataModelsFinished:(TableDataList *)dataList
{
self.tableDataList = dataList;
}
これは次のように定義されます
@property (nonatomic, retain) TableDataList *tableDataList;
コールバックが完了した後、Table オブジェクトに対して dealloc が呼び出されるのはなぜですか?