stavo guardando un (2 anni) video tutorial sul multithreading che ha dichiarato che@synchronized vs NSLock grado vs. pthread_mutex_t
- NSLock esempio è 3 volte più veloce rispetto all'utilizzo di @synchronized
- pthread_mutex_t trova 2x più veloce di un'istanza NSLock (efficacemente 6x più veloce rispetto @synchronized)
È vero? Non ho trovato nulla che dichiari con autorità che lo è, ma volevo solo interrogare qualcuno di voi su StackOverflow per la vostra opinione e forse a prova di sicurezza.
Grazie!
Mentre io ho già accettato la risposta corretta, i futuri spettatori di questa domanda troveranno questo articolo per essere utile: http://perpendiculo.us/?p=133
Ricorda inoltre che @synchronized è un blocco ricorsivo, dove NSLock non lo è. –
@ RichardJ.RossIII - Un punto giusto. Probabilmente non è significativo nella maggior parte dei casi, ma potrebbe spiegare un po 'della differenza di prestazioni: '@ synchronized' dovrebbe essere confrontato con NSRecursiveLock. –
E che mi dici di pthread_mutex? Sono più interessato a @Synchronized vs pthread_mutex (ho letto molto sui due, da quando ho postato questa domanda). – ArtSabintsev