AFAIK, использование селектора - это способ объявить callback method
как то, что мы делали на Java, C #, ... Предположим, вы разрабатываете библиотеку A, которая выполняет асинхронный расчет и возвращает результат всякий раз, когда это делается.Во время разработки вы не знаете, какой метод обратного вызова вы должны вызывать при выполнении вычислений.Таким образом, вы можете заставить библиотеку получить selector
в качестве входного параметра и использовать performSelector
позже для вызова методов обратного вызова.
Надеюсь, это поможет.