2015-07-21 10 views
7

Quali sono le penalità relative alle prestazioni durante l'utilizzo del metodo swizzling in Objective-C?Prestazioni di swizzling del metodo Objective-C

Quali ottimizzazioni del compilatore, se presenti, vengono annullate con il messaggio di swizzling?

+6

Questa domanda non può generare risposte basate su opinioni. Un individuo che conosce le cose del compilatore può rispondere con i fatti. @pjs e co, ferma i punti di caccia. –

+4

Vorrei conoscere anche la risposta a questa domanda. –

risposta

3

Swizzling fa in modo che il runtime Objective-C scarichi le sue cache dei metodi. Se fai tutto il tuo swizzling il prima possibile nel tuo programma, questo probabilmente non avrà alcun impatto notevole.

Il compilatore non può fare molto per ottimizzare le chiamate di metodo perché Objective-C consente di sovrascrivere qualsiasi metodo, anche in fase di runtime (come con lo swizzling). Quindi hai già pagato il prezzo delle prestazioni di swizzling, che tu lo usi o meno.

Problemi correlati