Java Concurrencia : Readers - Writers Lock (ReentrantReadWriteLock)
Ahora chavos les voy a mostrar otro tipo de concurrencia, los Readers - Writers Lock! realmente espero que esto les sirva para sus futuros proyectos debido a los paradigmas asincronos que hoy en dia estan naciendo.
Los readers-Writers lock es un mecanismo usualmente usado en contextos donde varios hilos acceden a un mismo modulo. Es decir, los readers-writers lock permiten el acceso a un modulo para mucho hilos de lectura, pero solo a 1 de escritura al mimos tiempo, concurrentes. Esto nos sirve para mejorar el rendimiento, dibido a que permite leer a diversos hilos, pero solo a 1 le va a permitir escribir y si a esto le aunamos el hardware con el que hoy en dia se cuenta, multi nucleos, y multi procesadores, esto nos permite realizar calculos en un tiempo significanetemente menor.
Un ejemplo sencillo de esto son los debates presidenciales, donde muchas personas pueden escuchar (leer) al mismo tiempo pero solo 1 puede hablar (escribir).
Al igual que el metodo pasado, este tipo de concurrencia utiliza el patron Bridge
//Android Readers - Writers Lock
Podemos ver un ejemplo sencillo de este tipo de concurrencia si cuando usamos el socket bluetooth de nuestro dispositivo, puedo ver a muchos dispositivos bluetooth a la vez, pero solo en 1 puede escribir o realizar operaciones. Este tipo de concurrencia puede aplicarse a cualquier programa, simplemente se tiene que implementar la interfaz Closeable.
//Conclusion
En conclusion, el uso de Java ReentrantReadWriteLock nos permite mas concurrencia que el simple Java Reentrant Lock. Sin embargo estos beneficios solo se pueden ver con sistemas con multi nucleo y multiprocesador
Pueden ver un ejemplo practico en mi Github, cabe mencionar que lo realize solo con Java, asi que facilmente se puede implementar en Android. Por lo pronto me despido, nos vemos espero que esto les sirva ^_^/
Los readers-Writers lock es un mecanismo usualmente usado en contextos donde varios hilos acceden a un mismo modulo. Es decir, los readers-writers lock permiten el acceso a un modulo para mucho hilos de lectura, pero solo a 1 de escritura al mimos tiempo, concurrentes. Esto nos sirve para mejorar el rendimiento, dibido a que permite leer a diversos hilos, pero solo a 1 le va a permitir escribir y si a esto le aunamos el hardware con el que hoy en dia se cuenta, multi nucleos, y multi procesadores, esto nos permite realizar calculos en un tiempo significanetemente menor.
Un ejemplo sencillo de esto son los debates presidenciales, donde muchas personas pueden escuchar (leer) al mismo tiempo pero solo 1 puede hablar (escribir).
Al igual que el metodo pasado, este tipo de concurrencia utiliza el patron Bridge
//Android Readers - Writers Lock
Podemos ver un ejemplo sencillo de este tipo de concurrencia si cuando usamos el socket bluetooth de nuestro dispositivo, puedo ver a muchos dispositivos bluetooth a la vez, pero solo en 1 puede escribir o realizar operaciones. Este tipo de concurrencia puede aplicarse a cualquier programa, simplemente se tiene que implementar la interfaz Closeable.
//Conclusion
En conclusion, el uso de Java ReentrantReadWriteLock nos permite mas concurrencia que el simple Java Reentrant Lock. Sin embargo estos beneficios solo se pueden ver con sistemas con multi nucleo y multiprocesador
Pueden ver un ejemplo practico en mi Github, cabe mencionar que lo realize solo con Java, asi que facilmente se puede implementar en Android. Por lo pronto me despido, nos vemos espero que esto les sirva ^_^/
Comments
Post a Comment