#ios #objective-c #objective-c-blocks
#iOS #objective-c #objective-c-блоки
Вопрос:
Из документации:
/**
A block to be executed just after an object is added to the cache. This block will be excuted within
a barrier, i.e. all reads and writes are suspended for the duration of the block.
*/
@property (copy) TMMemoryCacheObjectBlock didAddObjectBlock;
Я пытаюсь использовать это для печати сообщения при добавлении объектов в кеш. Моя попытка до сих пор:
[[_timedCache memoryCache] setDidAddObjectBlock:^{
NSLog(@"added something to cache");
}];
Однако это приводит к ошибке компилятора «несоответствие типа параметра». Я довольно новичок в Objective-C и, вероятно, делаю здесь что-то наивное. Есть предложения?
Ответ №1:
TMemoryCahceObjectBlock
имеет следующую подпись: (TMMemoryCache *cache, NSString *key, id object)
, которой нет у вашего блока. Измените подпись вашего блока, и вы в выигрыше.