В моем проекте, у меня есть функция, как это:обертывания и разворачивают с NSValue
- (void)doSomething:(NSError**)error {
...
}
Мне нужно вызвать эту функцию в другом потоке, используя функцию performSelector:onThread:withObject:waitUntilDone:, что-то вроде этого:
[self performSelector:@selector(doSomething:) onThread:anotherThread withObject:??? waitUntilDone:NO];
Но параметр функции имеет тип NSError**
. Я рассматриваю refactor тип параметра функции -(void)doSomething:
от NSError**
до NSValue*
и передать NSValue*
тип в качестве аргумента.
Это означает, что мне нужно обернуть &error
(который имеет тип NSError **
) в NSValue
и передать его в качестве аргумента и развернуть его позже. Как обернуть & развернуть NSError**
с NSValue
класс?
Зачем вам нужно обернуть 'NSError' в' NSValue'? – rmaddy
Я хочу обернуть «NSError **» и передать завернутый NSValue в качестве сегмента, а затем вызвать performSelector: withObject, –
1) Зачем вам нужно обернуть 'NSError'' NSValue', чтобы передать его 'performSelector : withObject: '? Его не нужно обертывать. 2) Зачем вам нужно использовать 'performSelector: withObject:'? Всегда есть лучший способ.Я предлагаю обновить свой вопрос с более подробной информацией о том, что вам действительно нужно сделать, чтобы люди могли предложить лучший совет. – rmaddy