ARC __bridge cast Block_copy & Block_release

По какой-то причине я хочу, чтобы блок выполнялся во время следующей итерации цикла выполнения, поэтому я придумал:

typedef void (^resizer_t)() ;

- (void) applyResizer: (resizer_t) resizer {
    resizer() ;
    Block_release(resizer) ;
}

- (void) usage {
    ...
    resizer_t resizer = ^() {
        // stuff
    } ;

    [self performSelectorOnMainThread:@selector(applyResizer:)
                           withObject:(__bridge id) Block_copy((__bridge void *) resizer)
                        waitUntilDone:NO] ;
}
Разве это не иронично, что я должен отменить * аргументблок_copy?Почему компилятор доволен моим Block_release, когда он задыхается от Block_copy без моста void * cast?

Код работает, я не обнаружил ни утечки, ни преждевременного выпуска, но я немного озадачен синтаксисом ...

Ответы на вопрос(2)

Ваш ответ на вопрос