Скажем, у меня есть селектор:непосредственно выполнить селектор на объекте
(SEL)aSelector
и у меня есть объект MyObj
.
aSelector
представляет собой функцию, определенную в классе MyObj
.
Как я могу выполнить селектор наMyObj
?
(я нашел в классе NSObject, есть функция:
- performSelector:onThread:withObject:waitUntilDone:
Но это не подходит то, что мне нужно, так как withObject:
часть там представляет параметр помещаемые в функцию селектора, но то, что мне нужно, чтобы отправить сообщение селектора в этом myObj
)
===== Почему я спрашиваю & Что я хочу достичь ===
Я хочу иметь общую функцию, которая принимает параметр типа Selector и объект, на котором должен выполняться селектор. В этом общем теле функции, я использую диспетчерскую группу для выполнения этого выбора на объекте и ждать Дисплейного селектора, мой фрагмент коды:
-(void)myGeneralFuncWithObject:(NSObject*)myObj andSelector:(SEL)aSelector{
...
dispatch_group_async(group, queue, ^{
// My question is how to write code to
// indicate performing aSelector on myObj here?
});
dispatch_group_notify(group, queue, ^{
// selector function finished here, I suppose.
});
}
ПОЯСНЕНИЕ:
Я хотел бы выполнить селектор на myObj
, как я уже говорил выше. Класс myObj
также является подклассом NSThread
, и я бы хотел, чтобы селектор выполнял эту тему. Итак, в целом, я хочу, чтобы селектор выполнялся по myObj
и по потоку myObj
. Вот и все.
Не могли бы вы объяснить в деталях, чего вы пытаетесь достичь? – Zartha
@ Zartha, см. Мое обновление. –
Вы хотите просто вызвать метод без аргументов? Затем передайте 'nil' в параметр' withObject: '. Я не уверен, что полностью понимаю, о чем вы спрашиваете. – Hamish