Разница между [self MethodName] и [self executeSelector: @selector (Имя метода)] - PullRequest
9 голосов
/ 16 сентября 2011

В чем разница между вызовами методов следующих типов

1

[self methodName];

и

2.

[self performSelector:@selector(methodName)];   // no afterDelay is used

Это как executeSelector будет использовать другой поток для работы ??

1 Ответ

12 голосов
/ 16 сентября 2011

В большинстве случаев они эквивалентны.

Согласно документации цель варианта performSelector: состоит в том, чтобы вы могли вызывать методы, которые определены динамически и фактически не присутствуют во время компиляции.Это все.Для вызова метода, который присутствует во время компиляции, между ними нет никакой разницы.

...