Los spinlocks y los sem�foros tienen variantes de lectura/escritura: rwlock_t y struct rw_semaphore. Estos dividen a los usuarios en dos clases: los lectores y los escritores. Si s�lo est�s leyendo datos, puedes coger un bloqueo de lectura, pero para escribir los datos necesitas un bloqueo de escritura. Mucha gente puede tener un bloqueo de lectura, pero uno de escritura debe de ser �nico.
Esto significa que es mucho m�s f�cil bloquear si tu c�digo se divide ordenadamente entre l�neas lectoras y escritoras. Toda las discusiones posteriores tambi�n se aplican a las variantes de lectura/escritura.